Add websocket support

Websocket SSL Support will only work with certs that are already
trusted(e.g. if you connected via SSL before)
RelayConnection now has a queue for outgoing messages, instead of
spawning a new thread for every message.
An attempt to detect if we were logged in successfully has been added by
checking the weechat version. Currently no error handling exists if it
fails.
Fix a few issues when disconnecting

Under some circumstances the notifyHandlers call wouldn't occur, leaving
the client stuck thinking it was still connected.