use File::Temp::tmpnam instead of POSIX::tmpnam

This is unfortunately necessary because Android's native
tmpnam is broken -- it tries using /tmp, which the system
never has.

Meanwhile, File::Temp::tmpnam uses File::Spec->tmpdir
internally, which does the right thing.