Catch Throwable from socket.connect().

Due to framework bug nio socket connect method may throw AssertionError if socket is already closed on other thread, it would crash the whole app, and should just report an error for this request.
Catching any Throwwable is the easiest work around this problem.
Fixes #282