Fair enough. This is done. On a related note, I'm seeing a flaw in the interface for `Type`, more on this later.