Set tabular numbers where numbers align vertically

On tables and graph y-axes.
Replace tabs with spaces in stylesheets
Merge pull request #403 from alphagov/tabular-in-tables-only

Set tabular numbers only where numbers align vertically
Fail gracefully with undefined data in bar_chart_with_number module.

If the valueAttr we're looking for is not found in the response,
supply null data instead. This will be displayed as (no data) in the
bar charts.
Add percentage option for bar_chart_with_number module.

If "format": { "type": "percent"} is set in config options,
display percentages throughout this module.

Expects data to be supplied from Backdrop between 0 and 1.

Add example to no-realistic-dashboard, and update tests.
Fix JSHint errors
Improve formatting logic in bar charts.

As suggested by @lennym in: https://github.com/alphagov/spotlight/pull/415#issuecomment-41658371

Use `format` option on collection, and use `this.format` consistently in view.
`this.format` uses the new formatters in `extensions/mixins/formatters.js`.

Notes:

  * Also extends journey collection to use format option, since the bar chart
    modules expect this option to be set.
  * Doesn't use `this.format` in `bar-chart.js` for numeric axes, since this produces
    odd results. Instead, falls back to our graph defaults for numeric axes, and only
    uses `this.format` for percent-formatted axes.
Make stylistic improvements.

Several code and stylistic improvements as suggested in this thread:
https://github.com/alphagov/spotlight/pull/420

Improvements:

* Better formatting in `spec.bar.js`
* Tidy code in `most-recent-number.js`
* In collection: pass entire options object through to axis, and allow
  user to specify a simple string rather than an object if desired
Extend formatters in journey module to use 3 s.f.

This now causes problems if the value is set to 0. Amend the
significant figures logic in the formatter to correctly return
0 when 0 is passed, and update tests.