rework initialization of Unity's internal structure to be more easily cross-compiler supported.
Merge remote-tracking branch 'upstream/bug/init_unity'