Fix #1214: Static methods in the IR.

Trait impls have been eliminated, in favor of supporting
static methods in any kind of class.

Trait impls are encoded exactly in the same way as on the JVM,
i.e., a class directly extending Object, with static methods.
This is currently the only use of static methods in the IR, but
in theory it can support static methods anywhere.
No it is needed not to emit the data of a non-class in case it is not used other than for its static methods.