Fix script binding tests

Tests were broken by going single threaded
Add microbe movement classes

Use the MicrobeMovement component for everything that's supposed
to move like a microbe.
Move NULL_ID out of EntityManager to global NULL_ENTITY

This alleviates the need to include the entity_manager.h header
if a file only needs the NULL_ID.
Add TouchableValue template

A small helper to make a single value touchable without the need
for deriving from Touchable.
Rename Properties to Transform in OgreSceneNodeComponent

Makes the intent more clear
Switch from std::chrono to boost::chrono

The standard library in gcc 4.7.3 seems to have problems keeping
milliseconds and microseconds apart. Boost does a better job.
Allow setting a SceneNode's parent
Add OnCollisionComponent
Add RigidBodyComponent::hasContactResponse
Add RigidBodyComponent::kinematic
Add collision filter masks to RigidBodyComponent
Add OnCollisionComponent script bindings
Add OnCollisionSystem to engine
Add OgreEntityComponent::materialName
Add Game::globalEntityManager()
Give TouchableValue a default constructor

The default constructor initializes the underlying value to a
default constructed one.
Automatic touch() when changing a TouchableValue
Make operator T() in TouchableValue const
Make Component aware of its owner (entity)
Removed most uses of std::shared_ptr

Makes ownership clearer and possibly increases performance