Set up tests.
Fixed test compile base path.
Refactoring type management.  TypeManager delegates to LibraryResolver to resolve library and type.