Implemented strategy instantiation in factory. Refactored strategies.

Refactored AttackStrategy as best I could but still ugly.