added requirements and user model created