Use '$q' for async operations to make sure Angular digest is run when they finished.
Implement login module.
Redirect anonymous users to login page.
Only show navigation items to authenticated users and add a logout link.