Don't store neighbours inline:

Not sure if this actually makes a difference yet. I want to simplify the
code.
Store the actual block count in the atom blocks:

This means that the atom count doesn't have to be a multiple of the
block size either. There's no loss in performance.