Now allows hyphens in "cleansed" filenames.
Allows Required element to be omitted in Submodules