Refactoring to prep for increased flexibility.
Right now it's very, very, barely capable of message querying. It can: * Run one-shot requests against all known events. * Run real-time requests, pushing each matching event to the frontend.