Clean client code so there's a clear Viz

* Make Tags a Backbone.Collection
* Make SearchResults a Backbone.Collection
* Make DocumentList use a Backbone.Collection
* Remove wonky "proxy" objects from JSON to Backbone
* Remove document_store, and don't put DocumentList in "cache"
* Remove @state from OnDemandTree
* Make DocumentListParams store objects, not IDs
* Make State store a Document object, not an ID
* Remove "world"
* Remove "cache" and add DocumentSet, with tag/untag ops/events
* Make DocumentListParams use a DocumentSet and a Viz
* Adjust URLs for consistency
* Make tree fetch (from OnDemandTree) separate from DocumentSet fetch
* Make tree handle tag-count fetches itself, instead of "cache"

Other nice changes:

* Speed up Tour specs by using a fake clock.
* Order SearchResults on server
* Put a couple of separate methods in Tree.app
* Fix an i18n call in navbar.scala.html
* Use CSS flexbox for navbar and main container sizing

Squashed commit of the following:

commit f3fa0eba022cff1eb98c2fc0eda16285637f3eda
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 12:13:45 2014 -0400

    Fix tree counts in tag dialog

commit 95ddaec5d9cccfe5b3fc7d2279a8d55bc051ad98
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 10:59:25 2014 -0400

    Fix page number display

commit ba7744f124aff972eba39661263af23ccd9bf42c
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 10:49:40 2014 -0400

    Fix integration tests

commit 7f154f3254467b39cb5d649ab216aa53ba14d735
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 09:51:28 2014 -0400

    Make navbar use proper i18n key

commit 174d97e5ad890a75b213070aaf041552f8dc10cf
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 09:51:20 2014 -0400

    Fix TagController unit test

commit 8e085e6140173a3aeb75c4e9b30220b80ac5484c
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 18 09:46:28 2014 -0400

    List the proper search results in the proper order

commit 5f952f2aeb8842bbb6c8b243aecc2260a122f597
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 17 18:29:59 2014 -0400

    Make Viz part of DocumentListParams.

commit 8ca626e37e9a90eeedd3ecb1d2b43656e05a6c58
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 17 15:45:08 2014 -0400

    Remove GlobalChannel, it was never used

commit aaba44b1e732b0fc6ae6d8917b3bbda903ac1be7
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 17 12:57:17 2014 -0400

    Make searching nice and clean

commit 6d4f7a19aaaf6aafdd11cb6c1f95ce2185d939be
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 17 09:06:28 2014 -0400

    Make DocumentListCursor work again

commit 86eea9c4b85fe43f1fdeb16226afad8cd42a843a
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 18:09:23 2014 -0400

    Make tagging a document list or document work

commit 236462f855dff1feb4b4498fcecbe1011c90d1b2
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 15:51:25 2014 -0400

    Fix CSS

commit 58cc68089412fbf2c123aa694f35aceb8b21abce
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 15:05:03 2014 -0400

    Fix tag-organize to not crash

commit 0f4c03235330d118f1b8b105c33154c64718f144
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 14:37:57 2014 -0400

    Still broken, but with a finite number of bugs now

commit 0e0668da655546066c849d362fea250a3a6cbc4e
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 09:45:44 2014 -0400

    Fully broken

commit 07c0c98c29b35128ed2c6d84d213af5797ccec90
Author: Adam Hooper <adam@adamhooper.com>
Date:   Mon Jun 16 08:37:25 2014 -0400

    Fix VizsController to have better ctor

commit 8c56d8627b8f9a010e0cbf872583e8cbcab1a094
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 11 18:08:18 2014 -0400

    WIP. Things are extra-broken right now.

commit 90e340bcfda35c36e7683d45ddf87c937c85d486
Author: Adam Hooper <adam@adamhooper.com>
Date:   Wed Jun 11 08:51:36 2014 -0400

    Don't know where I'm going. Broken, confusing.

    I was trying to split out "Tags" into a Backbone.Collection.
    Unfortunately, that dragged half the project's files into the fray.

commit 630977e72c19161e58b95f191b169b1dc5110bf2
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 10 14:33:08 2014 -0400

    Make Tour specs fast by using a fake clock.

    I suspect the slowdown might have been somewhere in PhantomJS's internals.

commit d2d8f6d473ba01a59b7118ab98d013d57fffff69
Author: Adam Hooper <adam@adamhooper.com>
Date:   Tue Jun 10 13:28:54 2014 -0400

    Separate document list from globals.

    ISSUES:
    * document_list_controller is huge and untested
    * document_list_controller reads/writes State
    * document_list_title uses cache values to describe selection
    * document list doesn't change when tags do. (We need Backbone Tags
      first.)