Use an s3 bucket
Use an s3 bucket

This changes makes it so the buildpack downloads software only from
Heroku's S3 bucket. The SHAs of uploaded files are recorded in
files.json and those SHAs are verified on download.

Additional data about expansion, versions and what not is stored in
data.json.

Both of these changes should make it so that updating Go versions
doesn't require messing that much with the BASH scripts and should
mostly require modifications to the json files.

A new bin `sync-files.sh` is used to sync the contents of the S3 bucket
to local disk, verify the SHAs and upload new files. Deletion of files
from the bucket requires manual work however. `sync-files.sh` downloads
files to `./file-cache`, which is ignored by git.

This includes a lot of cleanups for consistency as well.
YunChuan1/Line-Bot