Ok I created a trait ShuffleBlocks for that, which makes it easier since we can swap out different implementations later.