Binary collision processes
Binary collisional scattering is a subclass of binaryScatter, which requires the particles to be stored according to the cell and accessed randomly. This process is automatically done by the cellGroup class (requires the requireCell parameter in the species) and update each step;
In updating the cell group, offsets of each particle in the particle list are randomly shuffled and then indexed into the cell group.