Once we are done with this socket unregister the error handler from the shared connection.

I have been doing some testing and once you roll over 10 sockets you start triggering event emitter errors about maxListeners.

Based on these errors I tracked down the issue to the shared connection having many error_handlers attached to it and no routine to remove them on release of the socket.

Can push a test for this as well if required.