Add a build.properties to fixed the sbt version used in this project.
Add a SignalHandler for SIGINT (Ctrl-C)

Problem
Currently backup can be interrupted right after uploading an
archive and right before writing the status file to disk, leading
to a lone file in glacier without a local trace.

Solution
This handler properly cancel any task in progress.
It's still possible to have a crash at the wrong moment but it's less
likely that this problem will happened.
Store inventory list during restore phase

Problem
Large vault may take more than 24 hours to be entirely downloaded.
Inventory result only lives for 24 hours, so when you do a restore in multiple
steps you may have to regenerate another inventory because you never saved
the first one.

Solution
During a restore, save the inventory when available and reuse that one
for downloading all the files.
HTML-Escape the path stored in description

Problem
Amazon doesn't like non ASCII description for archive.
Because I store the relative path in the description, every
usage of non-ASCII characters will be rejected by AWS.

Solution
HTML-Escape the path before sending it to AWS, and vice-versa
during the inventory retrieval.