Group flat data by a key using `groupByValue`

This is essentially a shim that will convert flattened data into grouped data, ready to be reflattened!
The backdrop response that comes back 'flat' is not the same as spotlight's understanding of 'flat' so this is a temporary fix before we refactor data parsing in a more wholesale way in spotlight, once we're certain about the way it comes back from backdrop
- takes a value and an array of collects
- rebuilds grouped objects ready to be pushed through the remaining parsing methods
- adds `getCollect` convenience method to `data_source.js`

Parse groups with more than one record correctly

 - Move to using groupByValue function rather than flatten
 - needs some looking at aggregations that are not sums