Let's continue using a Listener for all callbacks on WebSocketClient. Let's not change the WebSocket implementation.

I want to retain backwards WebSocket functionality, as it is not broken or in need of love. It's only the socket.io classes that are in need of refactoring.