Use closures for connect and read callbacks
Don't close stream immediately if write fails, also log failure
Handle io stream errors gracefully
Fixed calling getaddrinfo

For reference:
https://github.com/facebook/tornado/commit/520b02f3a30f95fa9a3f2636b6ba2e5c9a76a99a
Added initial tests for io module
Added workaround for loop stalling on Windows

Issue #6
Simplified code
Simplified code
Added comment
Disabled ProcessPoolExecutor test on Windows
Use localhost address for io module tests
Fixed pipe test on Windows
Removed readable / writable properties from io streams
Added PipeStream handle

Provides the ability to open an arbitrary file descriptor such as
/dev/tun and treat is as a pipe stream
Renamed set_mode to set_raw_mode in TTYStream
Updated documentation
Added Travic-CI integration
Fixed io tests on Python 3
Disabled ProcessPoolExecutor test on Travis

Doesn't seem to work due to permissions
Added Travis CI status to README