Make search results auto update

- Move rendering of search results from erb to mustache.
- Create a ResultSetPresenter and a SearchResultPresenter and move functions for displaying things from the helpers into these presenters
- Test everything

This PR makes no functional changes and is a prerequisite for the next piece of work which is adding the JavaScript to auto update the page as the user changes the facet values.

Sorry this is massive and it's a friday.
Is this some debugging code unintentionally left behind? If not, what's the reason for it and why do we only need it in development?