This PR adds experimental build support for iOS, and allows complete null-safety as a bonus. (I was not able to get it to build otherwise.)
(In the event someone else is trying out this PR and wants to fix something, please feel free to do so.)