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.
It is part of the way `shared_mustache` works. You can read about it here: https://github.com/alphagov/shared_mustache#installation

Basically in development it uses raw mustache in `<script>` tags on the page, in production it uses compiled Hogan.js templates compiled into application.js using the asset pipeline. You will need to add a precompile step to the deploy script when this gets merged to do the compiling.