Simple, optional tarball cache support

Rationale:

Both in development and in production, some usage patterns of ruby-build
are slowed down by the download phase. In scenarios such as
troubleshooting failing builds or with provisioning situations (chef,
vagrant...) the repeated download is unnerving, bandwidth wasting and
simply against etiquette towards tarball hosters.

It also happens that some source sites happen to be down and in such
cases it is helpful to be able to sideload sources to rbenv.

Behavior:

By default nothing changes.

If the variable CACHE_PATH is set, then ruby-build will use that
directory to store a successful download, and will check before
downloading if the tarball is already there, in which case downloading
is skipped.

The file is first downloaded as before in the tmp subdirectory and only
moved afterwards, thus ensuring consistency.

There is no default cache path and the optional variable is to be set by
hand, ensuring people know what they're doing when using ruby-build.

Additionnally, rbenv-install will helpfully set CACHE_PATH if and only
if a RBENV_ROOT/cache directory exists. Again, the directory has to be
created manually.

The CACHE_PATH variable internally ends with a slash to mutualize
non-cached cases. Still, consistency is ensured whether or not a slash
is provided externally.

Notes:

I'm not quite sure CACHE_PATH is a good name, maybe
RUBY_BUILD_CACHE_PATH is better and less conflicting.
Minor README update
Merge pull request #238 from jtdowney/readme-update

Minor README update
Merge remote-tracking branch 'lloeki/tarball_cache_support'
CACHE_PATH -> RUBY_BUILD_CACHE_PATH
Unset RUBY_BUILD_CACHE_PATH if it's not a directory
Extract cached tarball filename into a local variable
Only print "Downloading..." message when actually downloading a file
Proper quoting
Fail on curl download errors
Verify MD5 checksums of tarballs downloaded with install_package
Checksums are optional and specified as anchors on package URLs.
Fix double checksum
Tell curl to follow redirects
Try to download files from RUBY_BUILD_MIRROR_URL first
Improved the download message to hide mirror URLs if they're 404s
Remove wget debug remnant
Compute MD5 using OpenSSL if installed
Set the RUBY_BUILD_SKIP_MIRROR environment variable to bypass mirror downloads
Degrade gracefully (no checksumming or mirrors) if MD5 is unavailable
Clarify verify_checksum guards