Don't assume that /tmp exists, use File::Temp instead

Some unixy systems don't have /tmp (android, blackberry 10)
which was causing tests in POE to fail.