Listener::addFailure now checks if the failure is
an instance of ConditionalAssertionFailed, only
firing Events::testAfter if it isn't.

Created a related test for can/cant to check that
they don't stop execution and that cleanup is
happening afterwards.