Finish basic user model with secure password and authentication