search: facets per collection

Allows to configure independently facets for every collection

Flask-Admin module available at /admin/facetcollectionview/

Matching fixtures for demosite: https://github.com/inveniosoftware/invenio-demosite/pull/21

There is no need to recreate DB. Instead of loading the fixtures - which are the default configuration, you can add facets by the Flask-Admin module. 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
What about using string format (https://docs.python.org/2/library/string.html#formatspec):
```python
return ('FacetCollection <id: {0.id}, id_collection: {0.id_collection}, '
        'order: {0.order}, facet_name: {0.facet_name}>'.format(self))
```