Tile rewrite and Level partial rewrite

Completely rewrote the tile class to be 3 seperate classes.
BuildableTile - Tiles that can have towers place on them
PathTile - Tiles that the enemies can walk on
BoundryTile - Tiles that cannot be built nor can enemies walk on

Started implementing a modified A* for enemy pathfinding.  Will be
modified since enemies can only move in the 4 cardinal directions and
there is only one path through the level most of the heuristics checks
will be uneeded.