Exposes the functionality to compile using the closure REST API

Details:
* This makes Java an optional dependency.
* Closure API does not give comprehensive control over compilation options.