clean up /theater

so that it doesn't need a bunch of pointers and that it reuses channel-scoped-user-modes machinery.

Tested that it works great with the modes branch.