Phase 2 - Cleaned up User Controller