Overhaul view and sort behavior

Big changes to view, sort, routing, filtering, etc, etc, etc...

Todo
-------
- [x] stream search -- race between $scope.updater and stream controller, need to send the filter
- [x] page search -- simple matter of fixing the ugly ng-show conditions at the bottom of the viewer template perhaps with more verbose, obvious variables, or scope/controller functions to abstract the route details from the template a bit
- [x] Check on https://github.com/hypothesis/h/pull/1436#discussion_r16705832 (leave as is 2014-08-29)
- [x] Restore "no results for “query”" message.
- [x] Annotations don't watch for changes
- [x] forced login -- a comment about ideas for that [here](https://github.com/hypothesis/h/issues/1020#issuecomment-53400218)

5af307479f8e079df4a2d951c37e4a4ae6d7c104

On Tue, Sep 16, 2014 at 3:42 AM, Aron Carroll <notifications@github.com>
wrote:

> In h/static/scripts/directives/annotation.coffee:
>
> > +
> > +    highlight = annotator.tool is 'highlight'
> > +    model = $scope.annotationGet()
> > +    original = null
> > +    vm = this
> > +
> > +    ###*
> > +    # @ngdoc method
> > +    # @name annotation.AnnotationController#authorize
> > +    # @param {string} action The action to authorize.
> > +    # @param {string=} principal Defaults to the current user.
> > +    # @returns {boolean} True if the action is authorized for the principal.
> > +    # @description Checks whether the given principal can perform an action
> > +    # on the annotation.
> > +    ###
> > +    this.authorize = (action, principal) ->
>
> Should this be vm.authorize? I think if we're going to alias the context
> we should use it everywhere.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/hypothesis/h/pull/1436/files#r17593948>.
>