RFC: Split out OS-specific bits in the runtime to help support freestanding targets.

[Readable/formatted/published version](https://github.com/miselin/rfcs/blob/master/active/0000-freestanding-runtime.md).