Create EnemySquad class

Used to abstract away the process of managing enemy squad waypoints and
behavior.
Moved sight range to squad, updated squad logic

Having one circle collider per squad reduces the number of collision
checks Unity has to perform.
Added Target class to Towers, refactored code
Added ability for squads to target towers
Towers switch allegiance when destroyed
Peasants take over towers and steal weapons