Custom case behaviors can witness and act upon the result value returned from non-void test case methods.  For async Task<T> test case methods, the result value is the unpacked T.
Improve exception message in the event that a convention class cannot be constructed.
Extract Convention-construction to a helper class resembling an IoC container, to ease upcoming support of arbitrary IoC containers.
Add doc/ folder containing the contents of the current README, split up by topic.
Fix table of contents links.
Fix table of contents links.
Simplify README, linking to individual documentation pages under /doc.
Enable Convention reuse by allowing test assemblies to optionally include a subclass of TestAssembly, in which a list of specific Convention types can be explicitly applied to the test assembly.
Update CustomConventions.md to include a section on sharing conventions.
Update CustomConventions.md
Simplify TestAssembly and Convention construction within Runner.
Avoid attempting to construct abstract convention base classes.
Rename *BehaviorBuilder to *BehaviorExpression.
The ConstructionFrequency enum is public.
Add ConfigModel to represent the mutable state being configured by the convention DSL.  Initially, it owns only the ConstructionFrequency value.
ConfigModel owns the factory func that is updated via ClassBehaviorExpression.
ConfigModel owns the OrderCases action that is updated via ClassBehaviorExpression.
Rename private fields of *Expression classes to differentiate between them during an upcoming refactoring.
ConfigModel owns the list of class-wrapping behaviors that is updated by ClassBehaviorExpression.
ConfigModel owns the list of instance-wrapping behaviors that is updated by InstanceBehaviorExpression.