@hatahet I figured it was easier to have `unwrap` discard the `TempDir` rather than keeping the "disarmed" `TempDir` around. So it is passed by value so that it is consumed by call to `unwrap` and you get compile-time errors if you try to use your `TempDir` object after `unwrap`ping the path from it, instead of runtime errors when it turns out the `Option` value has been set to `None`.

I hope that this way it is easier to use than if for example `TempDir` just had a `Path` field and a `delete_on_drop: bool` field that could be set to `false` instead of using `unwrap`, and it felt rather usable when I was working on the tests. Of course it might be different in "real" code that wants to keep temporary directories around for longer, and maybe there is a better way. :)