Chart2 as a mockup works with multi-level.
not-working solution for chart1
bar-chart component: switchable categories support
fix chart1's and chart2's category support

both use reduceComputed now. so computational effort is on the order of
1. instead of n.