added constructors to the models