refactor tempfile handling:
* ensure we hold the object open until after our operations so it doesn't get garbadge collected prematurely
* ensure we push up to '/tmp/' on the remote host; the tempfile.path on OSX is a bit creative to say the least
version bump: v1.4.15