Add connection throttling

This branch re-implements reconnect logic in Convos::Core, and at the same time adds connection throttling. The default timer is set to 2, meaning max one connection can be connected every two second.

Not sure if we should document this environment variable or not. I will most certainly modify it for my internal setup, where we don't have any limit on how many that can connect to the same irc server from the same source IP. If we want to make it configurable, then we should probably do this pr server..? Things could get complicated.

Sorry for doing refactoring in the same branch, but I had a hard time wrapping my head around the code as it was structured.

I'm happy with this branch now @marcusramberg after d5718af, even though I'm not sure about 9eb9f9e.