Waiting for user data to load before showing settings

Fixes #1059.
It doesn't belong on the root scope, or in the app's run function. The template should have a controller that exposes it through it's scope.