Don't let Ruby auto-delete temporary archives

Ruby's Tempfile class unlinks the filename it creates at an arbitrary point in the future.

So this logic won't work:

```ruby
archive_path = repo.object('7c1a2c9f3fe3da53a043496f7128c472f204d074').archive(nil, format: 'tgz')
# Tempfile may be deleted here
stat = File::State.new(archive_path)
```

The guarantee has to change. When using Tempfile to construct a filename, the user can't rely on Tempfile to delete it.