have the test runner `halt` return a `HaltArgs` class for use in testing

This class provides named attributes for writing clearer assertions.
This is as opposed to the previous method that just blindly returned
the args given and your assertions accessed attributes using the `[]`
operator.

This is to help you write more clear tests.

@jcredding ready for review.  Closes #74.