Accepts a path string targeting a directory to set up project files:
The directory will be created if it does not exist or will fail if
pointing to an existing non-directory. This will then either verify
that there is an empty revisions directory nested within it or
create it if not already present. If any error occurs, any changes
to the file system will be attempted to be reversed.
Accepts a name for the migration file and an optional path to a config file.
If no path is provided, it will add a timestamped SQL file relative to current
working directory; otherwise it will add file in a directory relative to config.