authentication and nav refactor