Partial commit. Some parts of Q&A and polls are in place.

This is a partial commit as I continue to port functionality across. As the
project reaches a stable state, there will be fewer 'partial commits'.
Partial commit. Basics of live poll results are in.

There are now two "kinds" of event in the EventRoom: push, and state.
Push events are added to the list that is rendered in the sidebar.
State events are cached as the current state of the event's id.
The event's type can then determine how they are rendered.

Polls render (the results arrive as state events) but the code to
check whether the results should be displayed, to push the vote to
the event room, to check whether the user has already voted, and to
limit the number of options chosen, hasn't been put in yet.