Simplify/refactor operators

The partitioning code and tiled model are refactored along to the description in the ParaPhrase deliverable D6.8 (chapter 4).
I fixed a bug which sometimes caused losing agents. Now there is an issue with deadlocking (#1) but it's not a bug.

The tile version divides the world into 2 pieces, and it requires the width to be even.
I think some tail-recursion on the ants yet to move would be more elegant than this fold, and it would also remove the need to delete Old from Occ in apply_move