code: public TempFile createTempFile() throws IOException {
  		TempFile tempFile = new TempFile(prefix, suffix, directory);
  		synchronized(tempFiles) {
  			tempFiles.add(new WeakReference<>(tempFile));
  		}
  		return tempFile;
  	}
docs: Creates a new temp file while adding it to the list of files that will
  be explicitly deleted when this list is deleted.