Recover any errors while handling tunnel connections. Fix a race condition that could cause the server to send its initial auth message out of order or even on a closed channel and crash the server
switch back to Close() calls since CloseRead() seems to cause sockets not to flush their writes
stop using CloseRead() until I figure out linger/flush issues