Authentication rewrite

BREAKING CHANGES
updated routes
handle rejected route authentication
don't use $rootScope.user & redirect to requested_route
fixed small bugs which passed through
Stop using $rootScope.user
fixed circular dependency
Adding Root Controller for user handling enhancements
Moving from service to globally available object for the user
Move user initialization functionality to own factory
Use user.courses (queried together with other user information) instead of studentCourses
fixed directive for use of new user.courses
Dont query the fields when they were queried before
ensure courses are set
Remove unused modal template files
Move login logic to specialized controller
Move addCourse and removeCourse functionality to Root controller in order to clean up app initialization
fix that sometimes courses are selected the user is already enrolled in
blur input field when using esc-key for exiting search
fix showing/hiding username in navbar