Close socket on manual disconnect

Close the socket channel on manual disconnect() – otherwise channel remains opened and isConnected() will return true but no further request will succeed.