Close the channel 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.
Call onClose after socket is closed

Call onClose from socket connection only after socket is closed
Merge pull request #62 from almozavr/patch-1

Close socket on manual disconnect