This is the abstract class from which all other foreign type classes should inherit. All ForeignType objects should have, at minimum, two key-value pairs:
The object ForeignType is a type, with ancestor classes Type < MutableHashTable < HashTable < Thing.