add product validation and #average_rating method