Fixed typo on 'filter'
Build tests according to the TestSpecification.

The tests are still an array of URLs. They will ultimately
need to be objects that can retain their results.
Move Target-related setup into Target.dispatch.

Pass a TestSpecification to dispatch instead of String[].
Use empty() to handle return-to-capture-page dispatch.
Remove useDirectURLsUntilComplete.
Remove setTTLUntilComplete.
Emit complete when all results are collected.

Replaces previous algorithm that emits complete when all
tests have been dispatched. This should fix bugs where some
tests are not accounted for in a batch.

Introduces Tests collection, which contains Test objects.
Also introduces their null counterparts, which are used to
generate URLs when no Tests are yet assigned.
Fixup previous commit: Add LiteralTest.
Add inline docs for Tests, Test, and LiteralTest.
Remove dead code around old urlQueue.
Add inline documentation for TestSpecification.
Add inline docs for NullTest and NullTests.
Introduce end event. Exit the CLI after end.

Exiting the CLI on complete may not allow for browsers
launched via WebDriver to close. The new end event will
fire when browsers (if any) have shutdown.
agentManager -> allAgents
Fix bug that ignores a request to launchBrowsers.
Merge pull request #24 from klamping/patch-1

Fixed typo on 'filter' section
Merge pull request #26 from reid/test-spec

Ensure all tests have results before firing complete
agentManager -> allAgents (for unit test)
Merge pull request #27 from reid/quit-process-on-end

Quit process after browsers quit, introduce end event