Search refactoring 1 - try 2

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.

  * * *

This is an updated version of #1097, rebased to latest develop, and fixed the tag search bug.