refact(authentication): major refactoring of the auth stuff.

Now uses $dialog service from angular-ui bootstrap project
Fewer watches
Cleaner authentication service API