Travis: route builds to their new infrastructure and enable caching

Their [new container based infrastructure][1] starts builds faster, takes half of the time to finish, and allows us to do caching of dependencies.

One random (but very nonscientific) test:

* Old: 1m54s in queue, 2m13s running, 4m07s total
* New: 0m14s in queue, 1m02s running, 1m16s total

The main downside is that that root access it not available, but it was only used for installing jq which was also [added to the build environment recently][2].

These new servers also include gradle 2.2.1 instead of 2.0, which required an upgrade of the shadow plugin from 1.1.2 to 1.2.0. See their [changelog][3]:

>Convert ShadowJar.groovy to ShadowJar.java to workaround binary incompatibility introduced by Gradle 2.2 

`~/.gradle` and `~/.m2` are cached, and a few dirs in `.gradle` are removed at the end of the script to avoid unnecessary cache updates

Also the "clean" step was removed to save a few seconds of build time, since most of the time it doesn't download libraries (not anymore)

[1]: http://blog.travis-ci.com/2014-12-17-faster-builds-with-container-based-infrastructure/
[2]: http://docs.travis-ci.com/user/build-environment-updates/2014-12-09/
[3]: https://github.com/johnrengelman/shadow/blob/master/ChangeLog.md#v120