chore(karma): make karma test suite work
feat(auth): make auth event driven

This refactors the authentication commons to be

* event driven
* tested
* customizable

See the lib/README.md for exposed functionality.

Related to CAM-2507
test(directives): add bootstrap test case

Related to CAM-2507
docs(README): add hint on testing