improve login/signup process, refactor into appl ctrl