Updated Makefile to create directories if needed

The makefile will create the output directories if they do not exist.
Added corresponding entries to the gitignore file to exclude files
generated.