Completed user model and included secure password hashing