refactor user model using concerns module