Testing improvements, Improve all around Agent related handling

Refactor unit tests to have a more per module feel and stub out unit test files for each module.

Implements Group leveraging Agent prototype where possible. (Issue #29) Added significant testing coverage for modules related to Agent handling.

This is really cleanup pre-1.0 spec changes, but since all of it would need to be done for 1.0 too it isn't lost work, just lost calendar time :-).

@davidells-scorm for review