Refactor of product to allow variant as a param, and reactive variant/product/index handling

New currentProduct dependency introduced in subscriptions