vcl: Move content into place instead of truncating

Fixes #17

There are still flaws, as it isn't possible to do this perfectly, but this
ensures that we don't run out of disk after we already truncated a file. It
also means that we fix a nasty little bug where writing to a vcl that was
currently linked to boot would actually overwrite the boot vcl BEFORE we
even deploy....