Connection and NetworkConnector now implements Closeable,
rather than AutoCloseable, since they deal with I/O.
Catching Throwable everywhere and closing channels when necessary to
avoid leaks.