Completed GTDLevel / fixed waypoint issues

-GTDLevel uses an STL map with key GTDWaveUnit enum and value int,  This
tells the game how many of each unit to spawn.
-GTDLevel reads from a specified text file that complies with the
following format:
[GTDWaveUnitType1] [number of types to spawn]
[GTDWaveUnitType2] [number of types to spawn]

-GTDLevel also includes a spawn rect to tell the units where to spawn.
-GTDMap utilizes GTDLevel to spawn units as specified in GTDLevel at a
random location in that level's spawn rect.
-GTDMap now contains a reference to the game's renderer for code
consolidation.
-Fixed issue causing one unit's waypoint to update everybody else's.
(GTDUnit).
-Units now switch targets properly if their current target dies (or
becomes unattackable for whatever reason).