Refactor all debate/speech views into classes.

Not sure about file/class naming, but all the debate/speech code duplication should be nixed by this.

* Closes #611