checkpoint for commtrack ui stuff - adds UI tab changes and dynamic sidebar navigation

Mutually dependent on https://github.com/dimagi/payments/pull/12

This should probably go on staging, although I'm relatively confident it's fine, but I'm submitting it now for review.

It makes all of the sidebars dynamically generated based on their definition in the tab classes hqwebapp/models.py in most currently accessible parts of HQ (expect reminders, and I don't think anything else).

It also lets the existing Project Reports / Active Data Management subtab UI element be a generic configurable UI thing -- you just create a new Tab class which has other tabs as its subtab_classes attribute.  The dropdown definitions remain independent but a default implementation could be based on the sidebar items, including for subtabs.

I also made the stuff that caused the couch_user kerfuffle a little more robust.