PIM-2722 : refactor category filter to enhance extensibility

| Q                    | A
| -------------------- | ---
| Bug fix?             | N
| New feature?         | Y (partially)
| BC breaks?           | N
| CI currently passes? | Y
| Tests pass?          | Y
| Scenarios pass?      | Y
| Checkstyle issues?   | N
| Changelog updated?   | N
| Fixed tickets        | PIM-2722
| Doc PR               |