create parent directory if it doesn't exist

If the file is in a directory that hasn't been created yet, then `createNewFile()` throws an IO error.

For example if the outputDirectory is '/home/projects/' and the compressedName is 'www/files/src.java' and '/home/projects/www/files/' doesn't exist yet, then `java.io.IOException: open failed: ENOENT (No such file or directory)` gets thrown.