WIP: committed some preliminary stuff

This is so multiple routers can attach them self to the `socket.onevent` method.