There are two changes required: 1. Force every processing source to implement `IDataSourceGrouper`. In the spirit of #395, this interface should just be removed and the method should just be added directly to the processing source class. 2. Remove all APIs that allow passing individual data sources to process. Only keep the methods that pass groups in for processing.