feed es view (bug 1036216)

Breaking https://github.com/mozilla/zamboni/pull/2298 up.

- Do a filter on FeedItem by region that puts matching region/carrier operator shelves on top.
- Do an OR query for FeedApp/Brand/Collection/Shelf using IDs
- Do an OR query for apps using IDs

Relies on [indexers](https://github.com/mozilla/zamboni/pull/2314) and [serializers](https://github.com/mozilla/zamboni/pull/2313).
If region and carrier, I'm trying to understand this boolean filter:
```
{'filter': {'bool': {'must': [{'term': {'region': 'us'}}],
                                        'must_not': [{'bool': {'must': [{'term': {'item_type': 'shelf'}}],
                                                               'must_not': [{'term': {'carrier': 'tnm'}}]}}]}},
```
Something like: `region == 'us' AND not (item_type == 'shelf' AND not carrier == 'tnm')` ?  The logic for this is confusing to me as an "outsider" of the feed work. Can you explain?