RFC: IO simplification

This RFC proposes a significant simplification to the I/O stack distributed with
Rust. It proposes to move green threading into an external Cargo package, and
instead weld `std::io` directly to the native threading model.

The `std::io` module will remain completely cross-platform.

[Rendered](https://github.com/aturon/rfcs/blob/io-simplification/active/0000-io-simplification.md)
Any kind of loop / calculation can block the scheduler. It's *already* broken today because the compiler doesn't insert yields and green threads are *never* going to be viable without that compiler support. Programmers are not capable of manually inserting yield checks in all the loops where it's important, especially considering that libraries exist.