PIM 1348 : refactor group and variant group, add group type

Bug fix: [no]
Feature addition: [yes]
Backwards compatibility break: [no]
Unit test passes: [yes]
Behat scenarios passes: [yes]
Checkstyle issues: [no]
Fixes the following jira:
- PIM-1300
- PIM-1348