Implement User model with authentication.