Adding some of the background needed for AgentAggressive.
Merged my changes with Jonathan's