now tests for all possible modulemembers and sets the current. This means that all types are "looked up" in their respective scope. If they don't exist, it will give a warning. Now also self contracts are checked; for instance when a recursive type is used. (a class Foo that refers somewhere in the class to its own type)