fix: browsers_change event always has collection as arg
feat(launcher): normalize quoted paths

Closes #491
chore: make changelog a bit nicer
chore: use grunt-conventional-changelog

Merge the changelog task into Brian's grunt-conventional-changelog plugin:
https://github.com/btford/grunt-conventional-changelog/pull/13
chore: add auto release task
fix(reporter): prevent throwing exception when null is sent to formatter

In particular tests, the createErrorFormatter was recieving `null` instead of a string, causing the reporter to throw an exception and crash karma entirely. This was only happening in Firefox 22 - and I'm pretty sure it's due to the assert library I'm using, but better to protect against it.
docs(requirejs): update example to work on IE9

As this file is loaded into the browser, it must not contain any ES5-only methods/functionality. It's still very common to need tests for IE 8 & 7 and this code is currently causing an error in those.
feat: ship html2js preprocessor as a default plugin
test(html2js): add e2e test for html2js preprocessor
Merge pull request #633 from remy/fix-firefox-22-mac-null-replace-exception

fix(reporter): prevent throwing exception when null is sent to formatter
chore(deps): temporary switch grunt-conventional-changelog to master

Until the world famous slacker BTF pushes it to NPM.
tests(html2js): add missing devDependency
style: rename variable to make jshint happy
chore(changelog): use javascript instead of js

Because highlight module, that generates the docs does not know "js".
docs: update comments in client/karma.conf.js
docs: update for stable release
chore: do not change pdf files line endings
chore: add my thesis
fix: better serialization in dump/console.log

Serialize functions, null, undefined, etc…

Closes #640
style: make jshint happy