This exposes the envelopes to the C layer and changes the way we handle memory on
the C layer.
The tests showed we used memory management already incorrectly around our own
API and from the user's perspective it's nicer for lookups in structures to return
borrowed values instead of owned ones. This now removes sentry_value_free and
instead adds sentry_value_incref and senty_value_decref.
I removed free so that people upgrading are more likely to run into memory
management issues. They were already required to call free so all they need to
do now is to remove that call most likely and potentially call incref if they keep the
value around.