Prime the Ivy cache

The PR seeks to reduce the build time and hopefully eliminate some build timeouts by priming the Ivy cache prior to compiling an app for the first time.  Result show a savings of about 5 minutes for a vanilla Play app. It uses the [sbt-pkg-builder](https://github.com/heroku/sbt-pkg-builder/) to create the pre-built ivy tarballs.

In addition to priming the cache, this PR also splits the `sbt` commands into an `sbt update` followed by an `sbt compile stage`. This allows it to cache the Ivy repo before the app compiling starts.  This is important for some users who may get a timeout. Now a second `git push` will succeed because all dependencies have been resolved.

Once this is merged it, I'll follow up with more tarball ivy packages for various Play and Scala versions.
By the way, we can reintroduce a `play-version` command if necessary.

Getting the meta data of the Play version without downloading anything is not likely to be possible.  If you're getting the play sbt-plugin dependency transitively through another plugin (one example of a case where you might not have an `addSbtPlugin` in `plugins.sbt`), then you can't find the plugin version unless you resolve that plugin, which requires downloading at least all the meta data.

Other cases where this might not work: you've put it in a file with a different name (`project/plugins.sbt` is only a convention, you could call it `project/foo.sbt`), you're not using `.sbt` for your project but rather something like `project/project/Build.scala`, or you are using `project/plugins.sbt` but you've added the dependency directly to `libraryDependencies` (`addSbtPlugin` is just a helper function that adds the necessary sbt meta data to the dependency, that is, the right scala version and sbt version, and then adds it to `libraryDependencies`).

But I do think this will work for 99.9% ± 0.1% of users.