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)
Condition variables seem to work fine for everyone else and provide way more flexibility / power than this. The OS already provides the basic primitives so I'm missing why there would be a need to implement something like a barrier. Rust only had to reinvent those wheels because it had a broken threading model bolted on.