Utilize a temporary build path

Previously giftwrap was building packages directly in the destination
path. This often required sudo access to drop directories and files in
system paths.

In addition to just adding the code to build in a tempdir, add the
supporting code as well: cleanup, signal handling, etc.