leftovers are TBD.
- constrict Dispatcher.dispatch() to arity 3
- add helper methods to Dispatcher
- add EventType to Dispatcher
While fixing things, it was discovered that many of the things inside
LazyGuildDispatcher were just interfaces to GuildMemberList, in a very
weird way, just so it could be fitted inside the main Dispatcher. it was
decided to remove those unecessary interfaces, clients shall use the
manager directly.
there is an issue (not very urgent) where a traceback was shown at any
`manage.py` usage. this was not catched before because of recent
modifications that removed manager startup when calling `migrate`.