Rewrite IO engine

The IO handling code was wrong in so many ways I won't even bother to enumerate. Needless to say, it didn't work on my system at all.

I completely rewrote it to be non-blocking. The Sublime Text API is threadsafe, so calling run_command directly from the reader thread is OK.