Tables should use strings

During the performance analysis of spotlight we realised that ever
request spent a lot of CPU and memory rendering tables. It was shown to
be the use of the 'DOM' that caused these performance issues. Switching
the rendering to assemble strings and then parse them in one go has
reduced the mean response time, on local loadtest, by a factor of 5.

The tests have been modified to consider the output of render rather
than messing around with the intermediary functions.
Force Modernizr into thinking its on a tablet

In order for this test to run on a desktop browser we need to force
Modernizr.touch to be true and reset it when the test is done.
Merge pull request #621 from alphagov/refactor/table-rendering

Refactor/table rendering
Add 3 new high-volume service dashboards

These services have recently become high-volume, so they now have
dashboards.
High-volume dashboards text changes

This is the latest round of Transactions Explorer text and configuration
updates.
Merge pull request #624 from alphagov/update-dashboard-config

Transactions Explorer: update dashboard configuration
Change patent renewal dashboard slug

This service is an exemplar, so we're giving it a URL that matches
the service.
Merge pull request #625 from alphagov/74205392-change-patent-renewals-url

Change patent renewal dashboard slug
Display search term in box on services page

On page load, display the contents of the filter query parameter
in the search box on the services page.

This requires sanitising the input before displaying it because
sometimes there are naughty people on the internet.
Fix typo in FilteredListView
Make filtered list view take an object of filters

You might want to filter on more than one aspect, eg service name
and which department it belongs to.
Refactor dashboard collection for multiple filters

We want to filter the dashboard collection on multiple facets like
title and department.

To make this easier, use Underscore's filter method to return true
or false based on whether we want the dashboard included in the list.
Write out agencies and departments config files
Add department filtering to services page

This commit adds a select box to the services page to filter
services based on their department.

It generates an array of departments using a dashboard collection
which it uses to populate the select box. We create slugs based on
the department's abbreviation.

This works in browsers with and without JavaScript by adding a
submit button to the form.
Pluralise 'service(s)' correctly on services page
Add agency filtering to services page

This is broadly similar to the departmental filtering.
Show current filter in text title on services page

When the user has filtered the list of services, update the text
underneath the count of services to show what they're currently
filtering as.
Style select boxes on services page
Upgrade Modernizr from 2.7.0 to 2.8.2

Wow. Very change. Such modern.
Add History API to Modernizr

We want to use the History API on the services page to change
the page URL when filtering.