Basic prototype working

I'm at the point where I'm generating a queue of events that will allow
us to make a pretty decent prototype. This is just a proof of concept,
so feel free to tear up the structure.