FlxTilemap refactoring : Separation or logic/display

In order to implement easier our isometric tilemap (because the tilemap class change too often, we lost a lot of time merging it again all the time). I submit this refactor.

It fixes a bug in overlapsAt method
It adds the following new methods

* public function getTileIndexByCoords(Coord:FlxPoint):Int
* public function getTileCoordsByIndex(Index:Int, Midpoint:Bool = true):FlxPoint