Remove the concrete subclass name parameter from the generator properties
and the options dialog.

The generator has been changed to always generate a concrete subclass as
a nested class in all extensible matchers.
Add test case for generating matcher for leaf of class hierarchy.

When generating a matcher for a subclass without specifying any superclass
matcher, all properties on the class hierarchy are included in the matcher.
Add test cases for testing generation of non-extensible and extensible
matcher subclasses.
Add test case and support for generating subclass matchers for generic
types.
Fix @Matches annotation on generated matchers to use imported class instead
of fully qualified name.
Add test case for testing generation of extensible subclass matchers (i.e.
matchers that extend other matchers) for generic matched types with generic
superclasses.