Change to Product and ProductImpl to work from a Map and contain productcontainers instead of categories