Move composites to specific folders
Fix previous commit
Merge branch 'ecs' into create_composite_folder

Conflicts:
	include/components/RigidBody.h
	src/components/RigidBody.cpp
Make the BitArray iterator prefix-increment and postfix-increment
operators override the C++11 ones.

Make BitArray return the iterator instead of a pointer on it.
Create == and != operators for BitArrayIterator, and begin() and end()
functions to return an iterator.

Modify PhysicalWorldLocation UpdateTransform() loop to use them.
Fix bugs in previous commit
Add an entity generator and a movement engine for benchmarking.

Add "-p N" option to the command line to enable the benchmark mode,
where N is the number of entities to generate.

Conflicts:
	include/systems/BulletPhysics.h
	src/main.cpp
Remove unused function
Fix Iterator for Visual Studio and other compilers
Simplify the construction of a BitArray by removing the need to have a
shared_ptr.
Fix BitArray copy constructor signature
Add a composite system with a dependency component and a subscription
component to keep track of entities that have a composite and to manage
composite dependencies.
Move FactorySystem construction in CompositeSystem.
Integrate the creation of entities in CompositeSystem
The composite creation and deletion orders are now delayed until
ComponentSystem::Update() is called.

Orphans composites are automatically deleted if explicitly declared (to
be tested when unit tests will be fixed)
Benchmark now uses CompositeSystem
System factories are now registered through ComponentSystem.
Fixed issues with screen quad initialization

Also adapted screen quad to use materials for rendering pass.

Spaces to tabs in IComponent.h and IFactory.h.

Added a default value for cull_face in Renderable.

Added resource src files to the project source files.
Fixed several getters in Mesh not always returning a valid result

Added explicity casts to WebGUIComponent for casting from float to int.
Added cubemaps to material

Along with adding them to the material Renderable now knows how to use them accordingly and
has received additional shader uniforms.

GLIcoSphere::InitializeBuffer is now called which fixes them.