Select JRE via system.properties

Previously, a user could not select the version of the JRE to use when
running their application.  This change adds a utility that inspects
the application's directory for a system.properties file.  If
java.runtime.vendor or java.runtime.version are defined in that file,
those values are used to decide which JRE to use.  The JRE binary is
then downloaded to the global cache.  From there it is expanded into
the application's directory for usage later.  Finally, the path to
JAVA_HOME is returned as part of the release process.

[#49321577]
Merge 49321577-which-java-system-properties to master

[#49321577]