Admin filter by taxon and geo_entity

This PR adds extra conditions in the `document_search.rb`file to allow searches by `TaxonConcept` and `GeoEntity` (restricted to `[GeoEntityType::COUNTRY, GeoEntityType::TERRITORY]`).

Two new select2 fields are added to the `documents/index.html.erb` template, and `documents.js.coffee` is completed with configuration for the geo entity select2 field.
Yes, I guess this is generally better handled by grouping in the database than by ruby. This also makes pagination slightly unreliable. What I'd do is create a database view to simplify the search, because once we add search by taxon concept - geo entity combinations, the AR code will become quite complex. I'd imagine the view could have aggregate columns for taxon concept ids and geo entity ids, which could be queried using array operators. If this ever becomes too slow it will be easy to turn it into a materialized view. Have a look at MTaxonConceptFilterByAppendixPopulationQuery for an example of this approach - this is also a search by multiple geo entities ids that need to be matched against listings of taxon concept, all of which are aggregated in listed_geo_entities_ids  / excluded_geo_entities_ids in the cites_listing_changes_mview. That has worked well for us, where all previous attempts yielded either duplicate / incorrect / too slow results.