Refactored user model a bit