Merge pull request #82 from jimfcarroll/0.7

Refactored the output executor functionality so that it's easy to inherit from and modify.
THESE CHANGES ARE ALREADY INCORPORATED IN THE TRUNK. Address test stability. This correctly resets the state in between subsequent test runs removing any accidental order dependencies.