Really fixes intermine/intermine#320

Caused by slightly confused logic.
More attractive and helpful demo

It spits out error messages, and looks nicer
Use nicer fonts, where available
removed dumb log statement
Moved all testmodel formatters into the demo application.
rewrote all as a specialisation of any
added two formatters for the same class
Fixes intermine/intermine#371
Addresses points 2 and 3 of intermine/intermine#374
Allow the user to request that all sub-tables are open by default
Allow SubtableInitialState to vary on a table by table basis.
Use SubtableInitialState config
Solves most of the issue with intermine/intermine#394
Added a test.metabolicmine service
Cleaned up some js-isms
Removed a bunch of log statements
Better handling of selected item rows
Better titles for untitled facets
Nicer facet title - with count
Signal when ready