Go hunting for types within the same document.

Switching documents by creating a temporary one can lead to subtle errors.
A fixed-point approach to dealing with constants.
Requirement 31.