Change request #892
Use std::variant for server events
Don't use boost signals anymore, instead write a unique read function that waits for an event an call a function with a variant of all possible events.
Irccd: rework server to be simpler
Server no longer has signals, now user is responsible of calling connect(),
recv() and pass a completion handler. The recv function will complete with a
std::variant of all possible events.
The server does not manage itself anymore, the reconnection system has been
moved to server_service instead.
To simplify reconnection, the limit has been removed now you can only enable
indefinite reconnection or disable it at all.