Create directories to file location on download

If I am downloading a file to `/my/file/location.txt` and its parent folders do not exist, the grunt task errors out. This fixes that issue and recursively creates the directories before opening a file stream.