(Break this into smaller tickets)
We decided that the outside interface would be OO UI as far as possible (which is enough to unify the TOC and topic display), but will exclude at least:
- Editor abstraction
- Moderation dialogs
- ... menu
Excluded stuff will use the old JS system.