unix: make stream.c more DRY
test: remove bad tcp_write_error test

It makes the assumption that if you try to write to a localhost socket
often enough, eventually its send queue will fill up - which doesn't
happen if the machine it's running on is fast enough.
unix, windows: rename uv_run2 to uv_run

This changes the prototype of uv_run() from:

  int uv_run(uv_loop_t* loop);

To:

  int uv_run(uv_loop_t* loop, uv_run_mode mode);

Where `mode` is UV_RUN_DEFAULT, UV_RUN_ONCE or UV_RUN_NOWAIT.

Fixes #683.
test: make threadpool tests valgrind-compliant

Delete the event loop after the test to stop valgrind from complaining
about memory leaks.