search: facets per collection

Allows to configure independently facets for every collection

Flask-Admin module available at /admin/facetcollection/

Matching fixtures for demosite: https://github.com/inveniosoftware/invenio-demosite/pull/21
Adaptation for inspire: https://github.com/inspirehep/inspire-next/pull/21

There is no need to recreate DB. The facets added to the default collection with id '1' will be displayed in other collections which doesn't have the facets set defined.

You need to run the updater to update your DB.

Alters: https://github.com/jirikuncar/invenio/pull/242
An instance of this class is just a relation between collection and facet. The actual set is expressed by relation definition in `Collection` (`facets = db.relationship('FacetCollection', backref='collection'`). This definition would be better moved to `FacetCollection` class as `collection = db.relationship('Collection', backref='facets')` with optional sorting.

Please amend the docstring https://github.com/inveniosoftware/invenio/pull/1982#discussion_r16955859