Simplify build dependency handling and add support for Ivy
ContractJavaCompiler should target the highest language version
supported by the runtime, rather than the highest version supported by
the compiler.