Enhanced collision detection system

Increased complexity of collision detection system. The idea is that it
will subdivide the playable level into smaller regions, tentatively
called "Squares". Entities will only perform collision detection with
other entities that are inside or near the Squares that it occupies. And
Entities will only perform collision detection with level Blocks that
share Squares with it.
This is to reduce the number of comparisons to be made from n^2 to
something lower.