It does seem to affect since sim falls into a "stable" configuration
where cells rarely change quite quickly. I'm thinking of making a
better colouring algorithm to see if I can get better images.
The actual computation is embarrassingly parallelised - the only part
that requires a mutex is the picking of any two programs due to the
fact that both programs may be affected following a compute block.
This is why we do a uniqueness check in thread_pick.