Issue #154 Corrected handling of temporary file creation

I changed the code to invoke the method 
`createTempFile(String prefix, String suffix, File directory)`
 instead of 
`createTempFile(String prefix, String suffix)`.

In the former method, the `File` class (or whatever native API call it's invoking in the background) is expecting a valid *file* name for `prefix`. As a result, under some file systems or temp directory configurations it fails, since the `java.io.tmpdir` usually points to a *directory* location. The latter version is the one that explicitly allows a directory to be defined, so this should work regardless of your temporary directory location or file system.