Right now the concept of breakdowns is hardwired to only handle one dimension at once (activeBreakdown). To enable simultaneous filtering and splitting, I think we need to:
- Sunset the concept of "Breakdowns" and replace it with "Dimensions".
- Right now we have an enormous Breakdowns Vue component. The also enormous GraphModel class handles most of the data logic related to breakdowns. We should create a Dimension model class that would remove a lot of business logic from the GraphModel while simplifying the data flow.
- Replace activeBreakdown with activeSplit. We want multiple dimensions to be able to be active, but only one should split at a time.