Introduce Temporary.using for ensuring directory cleanup after use

Raised from Ivory [PR comment](https://github.com/ambiata/ivory/commit/79699cfcf8c80b77000865c8108036425249684c#commitcomment-6873287)

/cc @markhibberd @maxpow4h 
Two minor style things:
 - `.map(_ => ())` is just `.void`.
 - capital `TemporaryResource` as a general convention, hunting down implicit / method name clashes is painful, which is what this convention is trying to avoid.