Fix #1180: Clean reflective call support for Longs
Merge pull request #1362 from gzm0/long-ref-call

Fix #1180: Clean reflective call support for Longs
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.
Rename ApplyStatic to ApplyStatically, and related renamings.

Hopefully the new naming scheme is more consistent, and less
confusing:

* Apply / methodsCalled: instance method, dynamic dispatch
* ApplyStatically / methodsCalledStatically: instance method,
  static dispatch
* ApplyStatic / staticMethodsCalled: static method