The example line 
```
lossesAndGradients groupBy { _.id } reduceGroup { _.reduce(_ + _) }
```
creates a reducer that is not distributive (combinable) within the system. Can we not use directly
```
lossesAndGradients groupBy { _.id } reduce { _ + _ }
```
The second version is distributive to the system and looks nice as well.