I also added a keyword argument to the output functions so that they can create the directory of the file if needed. What do you think?