`files.mkdtemp` doesn't clean up until the end of the process. Add a "done with temp dir" command which asynchronously deletes the dir earlier.