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.
Line 17 is too long: "-spec create_board(dimension(), dimension()) -> [gb_trees:tree(position(), cell())].".