Show groups in search results

This is the frontend half of some work to group search results by facets
such as topics, mainstream browse pages, or organisations.  It will have
no visible effect without corresponding changes in rummager, so is safe
to merge and deploy before the rummager changes are made.

After this change, Rummager can suggest groupings of search results in
the search responses.  These are represented by a result document with
an extra member, "examples", containing a list of example items in the
group.

Rummager may also provide a suggested filter to apply to the search to
show all the items in the group.