ids also for mocked features/site config
WIP: user-menu / signin link
WIP: user-menu / signin link
WIP: user-menu / signin link
WIP: user-menu / signin link: fix e2e specs
WIP: user-menu / signin link: fix e2e specs
Add signin link again, add signout functionality again and fix e2e specs for authentication

Summary:
* background: the new collapsible user menu introduced with D491 (c06fdd988e10801a7c50d9ad55837b94dff55d24) broke the authentication user flow
  * the signin link was missing completely (at least it was not visible)
  * the signout link under the collapsible user menu had no effect
* replace the signin-signout-button directive with two new directives
  * signin-button
  * user-menu
  * make sure they are only showed when signed in / signed out
  * adapt/fix the authentication e2e specs

Test Plan:
* start server
  * e.g. 'gulp --node-server'
* check that
  * signin link is present when signed out
  * user menu is present when signed in
* run the specs
  * protractor test/protractor-conf.js

Reviewers: shadowhand

Subscribers: aMoniker, seth, rjmackay

Differential Revision: https://phabricator.ushahidi.com/D495
rm href='#'
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
change badges from spaudanjo to ushahidi github user
fix code style
update body-parser
update to jasmine 2 (new syntax)

Conflicts:
	package.json
update watchify
rm obsolete line from .gitignore
rename '_s' to 'strHelpers'
remove the angular e2e related http mocking for now