Add karma for unit testing and TravisCI/SauceLabs

Summary:
* add karma
  * for testing units like controllers, services, directives, filters etc
  * add karma launchers for firefox and chrome
  * add karma-commonjs for using 'require' without browserify
  * add two npm scripts for running karma specs with Chrome or FireFox
  * add simple-test-app-config.js for configuring reduced app modules for testing
    * for setting constants like BACKEND_URL
  * add karma-coverage
    * prints out test coverage stats and saves them in lcov format under 'test/coverage' (gitignored)
  * add gulp tasks for
    * single test run
    * single test run with Firefox for TravisCI
    * tdd (test driven development)
      * run once and rerun on file changes (app and test source files)
      * you can/should keep this task always running during development to make sure that all tests are green
    * send-stats-to-coveralls
      * sends the coverage stats at test/coverge to the coveralls.io account
      * uses 'gulp-coveralls'
  * two first unit specs for
    * posts-list-view controller
    * post endpoint service

* add .travis.yml
  * configure for running karma specs
  * configure for running protract e2e specs on SauceLabs
    * you need to register for a SauceLabs account and set your SauceLabs credentials as environment variables in the TravisCI project settings
    * starts a node server in background

* enhance node based mock backend server
  * enable CORS for POST method as well (for signin)
  * add body-parser to get access to the payload of POST requests (for signin)

* add angular-mocks
  * in separate file 'app/mock-backend-config.js'
  * as an alternative to the node based mock backend
  * can be used when wished
    * make it conditional via this apprach: http://www.base2.io/2013/10/29/conditionally-mock-http-backend/)
    * via the gulp flag 'angular-mock-backend'
  * NOTE: the node based mock backend is currently the prefered way of mocking

* add badges to README.md
  * for the following services
    * TravisCI build status
    * dependency status of package.json
      * via http://david-dm.org
    * testing coverage
      * via http://coveralls.io
    * static code metrics
      * http://www.codacy.com
  * they are mapped to the master branch of github.com/ushahidi/platform-client

Test Plan:
* run 'npm install'
* try out the new gulp tasks
  * especially 'gulp tdd' for running all unit specs with karma and watching for filechanges
* configure TravisCI and SauceLabs and check if Travis build passes
  * you need to register for a both
  * set your SauceLabs credentials as environment variables in the TravisCI project settings
    * see: http://docs.travis-ci.com/user/sauce-connect/

Reviewers: shadowhand

Subscribers: aMoniker, seth, rjmackay

Differential Revision: https://phabricator.ushahidi.com/D479
fix some lint issues
fix some lint issues
fix some lint issues