In Xcode 16 beta 4, this API was marked as back-deployed before iOS 18, but
that changed in beta 5. Because calling the older export() API now generates a
(possibly spurious) warning about the export session leaving its isolation,
introduce a wrapper that's available before iOS 18 and uses the proper
isolation.
This included:
- Removing unavailable inits wholesale if no longer `required`
- Marking a few classes `final` so they could continue using
`Self(...)` rather than `OWSWhatever(...)`