Channel's Controllers and Router

This PR is now more like a Request For Comment about the design and implementation of chan router/controllers

I tried to implement most of what i rememberer about our irc discussion about the topic, but i might have missed something. Also there's potentially some issues about routing a single event to many channels (i dunno what u're doing with event id and token)

The code is still lacking documentations since it'll probably changed a lot before actual merge.

Obviously, comment and/or questions are highly welcomed