[EPIC] Support span envelopes in Relay
Follow-up work to https://github.com/getsentry/relay/issues/2960.
Prepare for SDKs switching from transactions to sending only spans. SDKs will send spans from the same segment in one envelope, but no more transaction. There will be no true "span streaming" for now (which would allow SDKs to send arbitrary batches of spans beloning to different segments in the same envelope).
### Segment envelopes
- [ ] Look through the current transaction processing pipeline and identify features which will stop working when SDKs send segment span envelopes.
- [ ] https://github.com/getsentry/relay/issues/3299
- [ ] [sentry] replicate release boosters etc. to work with spans instead of transactions (only if DS comes back)
- [ ] https://github.com/getsentry/relay/issues/3334
- [ ] https://github.com/getsentry/relay/issues/3335
- [ ] Move span processing pipeline to non-processing relays
As it seems, we will split work between Only Spans and Span Streaming. After talking to Armin, we'll most likely not start with span streaming within the next 12 months
@jjbayer I think https://github.com/getsentry/relay/issues/3299 does not belong in this issue, as it refers to standalone spans (span envelope item type), not the spans (name tbd, currently called otel_span) envelope item type
@stephanie-anderson internally, Relay converts all span item types to the same data structure, so the issue is still relevant. Currently the PII selector does not work on anything other than a span embedded in a transaction payload.
So far, we've referred to any span that's not embedded in a transaction payload as "standalone spans" in Relay. Should we avoid usage of "standalone spans" for this, is that name now reserved for something else?