add user model and basic unit tests