The Java target now depends on the inliner: all method calls should be
inlined before writing the target, which allows using constants instead
of methods and faking lazy initialization.

Re-added interface checker (not tested yet)

Fixed many -Wall warnings
General cleanup