Add bcrypt auth service, base auth service, auth factory and user model