Now connect() will return immediately. Later on, when the socket is actually connected, it will call GSocket::on_connected from the event loop. :^)
And use these to do the line-by-line reading automagically instead of having that logic in IRCClient. This will definitely come in handy.