Removes need for the outer T4 template to declare the root immutable type.
Fixes handling of empty immutable types.
Basic type hierarchies now compile.
Adds tests
Fixes whitespace
Fixes some compiler warnings.
Adds interface derivation.
Adds polymorphic test.
Regenerated other files based on new template.
Adds VB tests
Renames source file.
Refactored T4 template for readability.

Also eliminates the System.Object explicit base class.
Adds type hierarchy conversion with tests.

The tests fail for now.
Implements ToBase() methods.
Implements ToDerived() methods

One test failure remains.
Debugging enhancements to Optional`1
All tests pass.
Removes ArgSource type from generated output.
Adds support for type hierarchies.

Closes #2