recursively create all parent directories if they do not exist on Windows