Great refactoring and ProductsManipulator added