Karma chameleon

This enabled karma testing by default.
Also, it enabled karma testing via saucelabs on travis if the test is initiated by a branch from the main repository, otherwise, it runs the tests in phantomjs using karma.

This is the initial pass of the karma configurations. It should be good to go but it's a bit verbose. I'll be looking into how we can avoid the configuration duplication.