JENKINS-15178: Enabled log rotation on Mac OSX
Exclude the extraneous xmlpull and xpp3_min dependencies in jenkins-core.

The xpp3_min artifact causes a "JBAS015893: Encountered invalid class name" error on deployment in JBoss AS7 due to a malformed manifest in the artifact. The xpp3 artifact is extraneous since the xpp3 library is a direct dependency for jenkins-core. The xpp3 library replaces the xmlpull library.
Take subtasks into account when deciding to provision new nodes
Close filewriter on exception
Close streams on exception
Close FileInputStream on exception
Close stream on exception
Close stream on exception
Close stream on exception
Close stream on exception
Close stream on exception
JDKInstaller: close stream on exception
Close streams on exception
Close stream

The stream was not properly closed.
In addition, when the abort would fail, the exception caused by the abort
would be propagated up the stack instead of the original exception.
This patch makes sure to close the stream and let the original exception
propagate.
Close stream
Close stream
Close stream
Test: avoid NPE when zipFile could not be created
[FIXED JENKINS-13546]

Bringing this to the parity with ParameterizedJobMixIn.doBuild()

Instead of returning JSON, it returns "201 Created" and responds with the location of the queue item, through which the caller can track how it passes through the queue and eventually gets built/cancelled.

The approach in pull request #750 that relies on
AbstractProject.getQueueItem() is inherently unreliable, because
item can be immediately built before the JSON is rendered, or it might
corresponds to other queued items if the build supports concurrent
builds, etc.
Unused code