Refactor Batch constructor to accept 1 object arg.
Rename agent-group.js to target.js.
Rename AgentGroup to Target.
Rename symbols that use Target, not AgentGroup.

AgentGroup implemeneted most of the Agent API, so a lot of code
in Batch assumes it's talking to an Agent directly. Take this
opprotunity to rename symbols to make things clear.
Add assertion to prevent EventYoshi bug.

Attempting to call on() twice on an EventYoshi yields
unexpected results. When setting up listeners for a yoshi,
avoid setting up more than 1 listener.

Needs more investigation.
Merge branch 'agentgroup-to-target'