Collision hashtable

Replaces the CollisionShapes index system with hashtable entries, ensuring consistent insertion and deletion of CollisionShapes and better performance.

Credit goes to Jonathan Arsenault, originally submitted under
https://github.com/GarageGames/Torque2D/pull/72