Save all exceptions raised in a test

By default SenTestRun will log every exception raised, not just the
first one. otest-shim will now send all exceptions to the reporters.
Note that often only the first exception is useful, so the reporters
continue to only display the first exception.
Split concept of test failures versus test errors

In the current version of xctool there is no separation of tests that
fail (an assertion fails) versus tests with errors (a non-assert
exception is thrown). This change splits non-passing tests into the two
catagories.

Note that since we now keep track of the number of passes manually
rather than rely on [SenTestRun testCaseCount] the total number of tests
reported will be the number of tests actually run, not the number of
tests configured. It could be argued that the test error count should
also include the number of tests configered but not run, but for now it
doesn't do that.