added user authentication backend model and business logic