Enable specification of alternate dist locations for Gradle wrapper

Looks for system properties named org.gradle.alternateDistDir([0-9]+)?
and uses those locations to look for the gradle dist zip when it can't
be found at the original location.

This way, Gradle can build on a machine that can't reach the original
distributionURL without requiring changes to the versioned
gradle-wrapper.properties file.