One more thing: I'd suggest to unintern module-call and module-refs-hash, like we do with internal-interpreter-environment. They are implementation details that users can't meaningfully work with; in the case of module-call, users have no way to pass the needed environment pointer, and modifying module-refs-hash would be quite harmful.