chore: update contributing guide
chore(init-dev-env): add a copy of rimraf to make it simpler

Adding a copy of rimraf, so that people don't have to install it before running `./scripts/init-dev-env.js`.
docs(contributing): remove the note about grunt 0.4

Nobody uses grunt 0.3 anymore...
docs(plugins): fix a broken link
fix(config): not append empty module if no custom launcher/rep/prep

Just to get rid off the confusing debug message:
"DEBUG [plugin]: Loading inlined plugin (defining )."
feat: remove `karma` binary in favor of karma-cli

BREAKING CHANGE:
The `karma` module does not export `karma` binary anymore. The recommended way is to have local modules (karma and all the plugins that your project needs) stored in your `package.json`. You can run that particular Karma by `./node_modules/karma/bin/karma`. Or you can have `karma-cli` installed globally on your system, which enables you to use the `karma` command.

The global `karma` command (installed by `karma-cli`) does look for local version of Karma (including parent directories) first and fall backs to a global one.

The `bin/karma` binary does not look for any other instances of Karma and just runs the one that it belongs to.
feat(config): log if no config file is specified

Now that Karma tries to be a bit more clever and tries `karma.conf.js` or `karma.conf.coffee`, it's helpful to know that no config file was loaded.
style: make jshint happy

Do not lint the rimraf library, as it's not our code.
fix(watcher): allow parentheses in a pattern

Closes #728
feat(config): Allow tests be to run in a new window instead of iframe