Gradle system properties

Potential way of both building against snapshots versus releases with teamcity as well as building projects that require external libraries with teamcity. 


What's the rationale for this change?