Add user model
Add more validation
Add authenticaation