refactored Agents classes hierarchy

now separated Agents into Agent (that can update and destroy themselves),
UnitAgent (that binds itself to some bwapi.Unit) because later more agents
will come such as Commands, Areas, etc (which won't bind to units at all)
Merge branch 'master' of github.com:ideasmashup/special-tactics