Added the CollisionHandler

First commit to include the handler, still not functional correctly
Added missing functions

Added required onCollision function and getPosition function
Added AIMesh

Added AIMesh
Added reference to it in SummonersRift
Added load function in it, but commented it out (SummonersRift.cpp:78),
it crashes when trying to get the RAF file (?)
Collision fixing

- Removed stretch errors
- Added support for non-square info for maps
- Renamed m_Info to m_Heightmap for clarity.
- I should probably remove the hardcoded 1024 buffer size
- Fixed the map being flipped
Fixed crash

Thanks Ely :)
Changed codestyl

actually kind of sad, i like mine, but i have to stay consistent.
Implemented logger
Changed plain C style arrays to std::array and added mana cost deduction in finishCasting()
Removed mana deduction.
Finished pathfinder

- Added loaded boolean to AIMesh
- Removed old collision map from the handler, now only handles
intersection of objects
- made mesh protected, added a get function to the pointer of it
- Added oncollision for minion with example functionality
- Added A-Star pathfinding code
- Added distanceWith squared function (faster than regular), will
replace distance checks later on
- Added new Vector2 operators (divisions, multiplications with constants
and vectors)
- Why did I upload debug prints
- Fixed small codestyle error
- CollisionHandler now inherits the pathfinder.
- Optimised Object::collide. Even though nobody probably uses it. I
probably should.
Added collisionsupport for walls

Because you need to path when you walk into the walls.
Changed to printf style logging
Removed a break
Fixed a crash when there was no target for the object
Fixed ISO C99 warnings from using the -pedandic flag
Refined datatypes

- Cleaning data afterwards
- Use std::malloc instead of malloc (idk, portability or something)
Merge pull request #94 from kalouantonis/master

Implemented logger system and changed C style arrays in Spell class to C++11 std::array.
Finished and tested AIMesh

- Fixed AIMesh and is now tested and working! Could be slightly off due
to coordinate conversions, but fek it. It works pretty much. I haven't
run into issues.
- getY now returns -̶1̶3̶3̶7̶ -99999 when AImesh is not loaded or when
there's nothing there.
- Added support for larger AIMesh textures.
- writeFile now puts the X in red, Y in green, and the height value in
blue. Note that Our Y goes from down to up ingame, but it's the other
way around in the heighttexture.
- Credited my teacher for the line function
- Added UpwardDisplacement to objects
Tested and fixed Object-Wall collision

- Added a TODO to figure out stuff
- Objects now have a direction vector based on the last direction they
walked into.
- Removed unneeded headers from CollisionHandler.
- Added an isWalkable function to the map and the AIMesh
- AIMesh has a TranslateToTextureCoordinate. Don't use this, for real,
this is for my debug purposes. The translation is done by the system for
you.
Merge remote-tracking branch 'upstream/collision'

Conflicts:
	gamed/include/Map.h
	gamed/include/Object.h
	gamed/src/Champion.cpp
	gamed/src/Object.cpp