Extract properties to partial
Updated gallery layout
Extract options partial
Added Product.availableValues() & Product.variantForValues()
Refactor product/show to select options instead of variant