Search refactoring 1

This does the following:

 * Introduces the `viewFilter` service, to filter annotations according to a given query.
 * Factor out the filtering code from the controller into this new service. (As described in #1092)
 * Enhances the tab searching: now we can search for multiple tags.
Merge pull request #1099 from hypothesis/search-refactoring2

Search refactoring 1 - try 2