In debexpo_exec(), use a TempoaryDirectory() in a context manager to ensure $TMPDIR is removed on __exit__.
This way, whether a process exit successfully, unsuccessfully or is killed, it won't leave any files in $TMPDIR.
Test added to cover:
- Successful exec
- Failed exec (Timeout)
- Unsuccessful exec with custom env
Closes: #147