First draft of the Product, ProductCollection, Category and CategoryCollection interfaces