There is a class, UnresolvedType, that appears to be used only as a parent class to TypeImpl (which all serves to implement the Type interface). I'd guess that comes from some earlier interest in having the type system more abstracted than it actually is; but that is from before I worked on this code. I'd be interested to know what the intention was. --