Download, compile, and cache cmake

The source code is currently downloaded from the official sources. It might be nice at some point to instead host a pre-build version on AWS S3 or something.

Upon downloading, cmake is compiled. This takes a long time, but it only hast to happen once for a project. At the moment, all the cmake stuff is put in with the Python stuff. Maybe later there can be a directory just for cmake, but this way everything is already on the $PATH, and the default cache saving/loading logic just works. The path is `.heroku/Python`, and cmake will put things in `.heroku/Python/bin`, and create `.heroku/Python/Modules`.

Later releases of the app will load the cached version, which simply looks for the existence of the cmake binary, similar to how the buildpack finds the cached Python install, for example.
Export a $PREFIX environment variable for compiled dependencies

My own use of this buildpack is to run an app using libgit2 and pygit2, both of which want to install things, and both of which need a bit of guidance doing so in order to play nice. My venvgit2 package helps them out a bit, but at the moment it finds the right place to put stuff by either looking for the current virtual environment, failing that looking for a $PREFIX, and failing that, using some default.

The default (/usr/bin I think) fails with permission errors on heroku, but throwing it in `$PREFIX`, ie. `.heroku/Python` not only works nicely, but gets cached properly too.

This works for now, but a better solution may be to figure out how other compiled packages like `gevent` "just work", and fix venvgit2 (and possibly `pygit2` and also `libgit2`) to just work just like that.