A decorator that uses temp files to make functions such as f(infile, outfile) atomic