Exception handling during test class Disposal no longer relies on deprecated uses of ExceptionList objects.
Add PreservedException to allow rethrowing consumer-thrown exceptions without losing the original stack trace.
Exception handling during test class construction no longer relies on deprecated uses of ExceptionList objects. Factory delegate type simplifies to Func<Type, object>. When factories throw, PreservedExceptions are properly unpacked so that the original exception is presented to the user.
Alter the behavior of MethodFilter-based setups and teardowns so that they fail fast upon the first exception, to simplify the behavior and to prepare for the upcoming simplification of all exception handling.
Invoke uses the new PreservedException class so that its innermost try/catch blocks no longer work with ExceptionList objects directly.
Simplify deprecated MethodFilter overloads for SetUpTearDown behaviors by no longer using Invoke objects for those behaviors. Simplify Invoke now that it only needs to work for test methods. CaseBehaviors, InstanceBehaviors, and TypeBehaviors never fail to handle exceptions at their respective levels.
Simplify redundant try/catch surrounding attempts to dispose of test class instances.
Remove deprecated, overly-opinionated overloads of .SetUpTearDown(...) behavior builder methods that accepted MethodFilters.  Migrated these to the NUnit and LowCeremony samples which used them, then simplified their implementation there to reflect their actual intention. This reveals and documents the fact that PreservedException is a first-class concept which consumers are encouraged to use.