Start implementing AI
Enhance various objects
Add ModelableInterface
Add Irrlicht dependency and beginning the Scene implementation
Implement isBetween for graph walking
Merge branch 'master' into city-modeling

Conflicts:
	src/Graphics/Render/Model3D.h
Creating device object to initialize Irrlicht + continuing scene nodes
Implement SharedEntity
Implement CameraSceneNode, corrections on SceneNodes and add ThreadableInterface to the Device
Merge branch 'master' into procedural-generation-base

Conflicts:
	src/main.cpp
Basic test with IrrlichtDevice and threads
Continue AI implementation.
Add ai component, ai system and some other classes.
Add base of chunk data structures
Merge branch 'master' into 3d
Merge branch 'city-modeling' into procedural-generation-base

Conflicts:
	src/main.cpp
Thread fix
Merge branch 'master' into 3d

Conflicts:
	src/main.cpp
Use of dynamic_cast on Irrlicht node objects to avoid code duplication
RenderableComponent and continuing Scene
Implement RoadNetwork model