Refactor karma configs and use grunt-karma

At this point it uses grunt-karma from github, until [this](https://github.com/karma-runner/grunt-karma/pull/45) PR gets merged.

You can run karma in CI (single-run) mode:
```bash
grunt karma:unit
grunt karma:midway
grunt karma:e2e

grunt test:e2e # this also starts the webserver
```

Or in autoWatch mode:
```bash
grunt karma:unit_auto
grunt karma:midway_auto
```