more error handling in password reset