add auth and password reset functionality