Once classes are merged, we need to tidy up module/namespace relations and write some reflection-based tests.
This should iron out C# interop quirks.
We might want to reintroduce the separate IR hierarchy, maybe even make it stronger by having IProcedure references in non-metadata reference cases in the instructions.