added product constructor and test