The reason I have structured it the way I did, is that I am thinking about implementing a parallel version in which there is no periodic scan of the cells from the “World” 's point of vue, but it which there is instead a process (fiber) per cell and in which each cells continuously scans its surrounding in its own independent process.
The parallel version still seems buggy at the moment, so I have not published it yet.