Return a Future from IOStream methods.

This makes it easier to use IOStreams directly from coroutines.

Closes #953.