Show tables on module pages.

As part of the module design changes, we want to show tables on
module pages by default.

Add tests for the floatHeaders method in the table view.
Add JSON and PNG links to module pages.

These aren't styled yet.
Separate graph and table rendering.

Wrap all module elements in a container: give graph its own element.

Always render image fallback inside <noscript> tag.
Render table within module view, not within graph view.

This means that we can position the table alongside the "more
info" section of the module, rather than above it. It also
means that we can render tables for non-JS users, and render
tables on the server rather than the client.

Update tests.
Set valueAttr in the module controller.

We should set valueAttr consistently here, rather than doing it differently
for individual modules. We use visualisationOptions to pass valueAttr
through to the view.

Also, use appendTo not insertAfter to insert our HTML elements.

Update tests.
Update element used for visualisation fallback.
Stop setting valueAttr inside views wherever possible.

We now set valueAttr in a consistent way on the module view: stop
setting it individually on stacked and line graph views, and on
realtime, bar chart and grouped_timeseries views.

Update tests.
Update visualisationOptions on modules.

We now pass module-specific visualisationOptions through in a
consistent way. Update modules to reflect this.

Also, set hasTable to false for modules that do not require tables
(lists, tables, user satisfaction etc).

Finally, set requireSvg to false on table modules, since we now
render these server-side and PNG backups are no longer needed, yay!
Add new styling for module pages.

This includes removing the blue top borders (see the design).

Specific responsive styling is not required, since everything is
just floated left.

Update a couple of existing modules that are affected.
Bump cheapseats version for tests
Fix missing format options
Expose URL property of a page to client-side code

Some elements are re-rendered from templates on the client, and depend upon the url property of a module to render elements. This is not currently exposed at all to the client.

For example, the PNG download link on some graph modules' page-per-things.
Remove test for number of config properties

This is a really stupid way to test. Instead test the actual properties.
Fix module rendering tests

Use inspection for particular DOM elements of interest where possible, instead of matching enormous html strings.

Remove `fallback` property from view config since it isnt actually used anywhere.

Remove `offerPng` property as it is effectively a duplicate of `fallbackUrl` - it is true if and only if there is a fallbackUrl defined.
Merge pull request #540 from alphagov/feature/ppt-redesign

Module page redesign