Switch BlockMaterials to bodies/compound shapes.

The design goes as follows...

- Each Material class has one body, the material physics anchor, which is within
  the world and anchors the shapes as well as stores the material's
  characeristics (restitution, friction, etc).
- Each Material class has one shape, CompoundShape, which holds all child
  shapes dispersed in the world.
- Each Material set in the world has a CollisionShape binded to a x, y, z.
  This is required for callbacks to work correctly.
Signed-off-by: Chris Sanders <zidane@outlook.com>