Type args needn't be top-level declarations

These declarations interact with global mutable state when initialized. They are only used by the `mkTcGlobals` method so there is no reason why they should be top-level.