added models and controller classes