Introduced TestCase<T>,

which will enable more type-safe first-class test, because the type
argument represents the type of the test class.
Added a testCase action to TestCase<T>.
Added a Null Guard Clause to TestCase<T>'s ctor.
Implemented ConvertToTestCommand method,

although there are at least two problematic aspects of the implementation:
- It assumes that the case to T will always be possible
- It passed an incorrect IMethodInfo value to FirstClassCommand

Further tests should flush out these errors.
Added a type check and a helpful exception message

to deal with the cases where the test class instance isn't convertible to
the type argument T.
Simplified adaption of test action.
Added a TestMethod Inspection Property

to FirstClassCommand.
Simplified a test,

now that FirstClassCommand has a public TestMethod Inspection Property.
Passed correct method to FirstClassCommand.
Added a Null Guard Clause to ConvertToTestCommand

method.
Added an example of a strongly-typed Parameterized

Test.

The example triggered the override of
FirstClassCommand.ShouldCreateInstance, but there's no explicit test of
this property, as I'm not yet sure it should ALWAYS return true.