The actual socket is the exposed API so I'm having it emit the message event.
Connected the log function as a listener to it such that the ircBuffer is
entirely unexposed. The only change that I've made to the API is that
individual messages are emitted using the new message event as opposed to
using the data event.