feature: Prepare metrics for heka.

* Send metrics to stderr after flattening/formatting.

issue #1190
Clean up metrics based on @kparlante's suggestions.

* Add additional fields to logged metrics: lang,  hostname, pid, v, agent.
* Rename `time` to `date`
* Update tests.
Change `date` to `time`. Thanks @pdehaan for catching the error!
fix(csp): turn on report only mode until CSP issues are resolved
tweaking json in markdown
Merge pull request #1261 from pdehaan/readme-json

tweaking json in markdown
Store event data in two arrays, `events` and `event_durations`
Set `context` to `web` and `service` to `none` if not specified.

Simplify copying of fields.
Merge pull request #1255 from mozilla/csp-report-only

fix(csp): turn on report only mode until CSP issues are resolved.

I'm going to merge this until we have all the problems figured out. Thanks @zaach!
fix(server): Add a 'connect-src' directive to allow contact with the auth-server and oauth-server

fixes #1253
Extract csp middleware logic into its own file.

* Update the tests to ensure CSP is served when expected.
fix(client): Replace calls to [].indexOf with _.indexOf for IE8 support.

fixes #1263
fix(strings): fix reset password link error messages

The invalid and expired error messages were using verification link strings and markup
when they should use reset password strings and markup.
Replace the tests that used `String.prototype.indexOf` and `Array.prototype.indexOf` to use `assert.include` for clarity.
fix(css): Remove the blue background on select element focus in IE10+

fixes #1016
fix(test): Remove cache busting URLs in dev mode.

* If `static_max_age` is set in `local.json`, .JS files are served with a maxAge of 0 already. ETags will still be checked.
* Enables the use of browser dev tools. With dynamic cache busting URLs, filenames would change from one run to the next.

fixes #1145
fix(client): Remove keyboard accessibility for the show/hide button.

* Set tabindex=-1 for the show/hide password field button.

fixes #1239
fix(client): Throw an exception if invokeHandler is passed an invalid handler.

* This will help devs catch errors faster.

fixes #1105
fix(client): Abort autofocus events if no element exists with the `autofocus` attribute.

fixes #1109
Merge pull request #1277 from mozilla/issue-1109-autofocus-forever

fix(client): Abort autofocus attempts if no element exists with the `autofocus` attribute.