Introduce variable product factory and service
Add variation product saving
Add to cart forms based on product type
Remove stock from base variable product
Displaying and selecting variations in product view