Return user object and key object on authenticate
Fix existing user change.
Fixed verifying if user already exists