De-templatization of MeshShape class.

- The templates are removed.
- The TriMesh is now templeted over EmptyData.
- Added copy constructor for TriangleMesh class.
- Modifies TriangleMeshPlaneDcdContact to accomodate these changes.
Added clone() methods to Math Shapes.

- This is necessary when the Collision code is refactored to store a copy
  of the shape would be passed in.
- Added test cases.
Changed Collision::Representation to store shape.

- The RigidCollisionRepresentation now stores a copy of the shape.
- The pose of the collision representation is still got from the
  m_physicsRepresentation.
Transfer pose from Physics to Collision through Behavior.

- A new behavior, TransferPhysicsPoseToCollisionBehavior now transfers the
  pose from the Physics::Representation to Collision::Representation.
- BehaviorManager is modifies to allow Behavior types. This type
  determines when the behaviors will be executed. This allows the
  behaviors to be called multiple times from within the ComponentManager.
- New function Behavior::doUpdate(dt, behaviorType) now calls the
  update(dt) only for the behavior belonging to that type.
- ComponentManager::processBehaviors(dt, behaviorType): New param
  behaviorType. Calls Behavior::doUpdate(dt, behaviorType).