IRCClient: Add cap negotiation and sasl support