Refactor pie chart data

There was a bit of duplication in the two data views for the pie charts, so I consolidated these and moved most of the logic into the model layer.

I deleted most of the relevant controller tests, just leaving one for each action to ensure that they're still wired together correctly, and moved the meat of the test to the unit test layer testing against the new `Stats::PieChartData` class.