Convert Sigma in ECS (initial work waiting for decision)

This PR is a beginning work on Sigma to use the Entity Component System as 
replacement as OOP paradigm.

See entities/BulletMover.* to check what "pure entity" means.

See components/ControllableMove.* to see what a component should look like (this 
one is more commented) and what are the performance improvement opportunities 
there are that were not available in OOP.

Other components have been written : InterpolatedMove, PhysicalWorldLocation and 
RigidBody.

Writing components is enough to create new entity types. for example, a camera is a BulletMover without body and Renderable component. ECS is extremely modular.

To see how modular it is, comment line main.cpp:143 to deactivate the Rigidbody 
component of BulletMover to see the result. Try to do this in the develop branch in just 1 
line...

A ship is a BulletMover with a different ControllableMove, body and Renderable component. To become a ship, just create the components and give them to BulletMover in replacement.

Now you understand that BulletMover is not a hard coded thing : it is just a set of components. Change the components, and you have another entity.

Another major point is that now the code is horizontal and segmented. You can 
have dependencies between components, but is is explicit and manageable. The 
maintenance of the engine will be easier.

Last point is that the modularity and the horizontal organization of the code 
will be directly visible by the game that will use the engine: The components 
can be provided by users in native form to create new entities and the game is 
built as an extension of Sigma. With OOP, only existing entity class 
(BulletMover, Planet, etc.) can be herited to create a new entity. What happens 
if the game has nothing to do with space exploration ?

This is an unfinished job. If decision is taken to convert all Sigma in ECS, there are other components to write immediately:
- Viewer: an entity that wants to render the world has this component (on the screen, in a file, whatever)
- Renderable: an entity that is renderable has this component (stores the shaders, textures and so on)
- Spotlight: an entity that projects light must have this component.