munge_filename isn't idempotent for filenames containing spaces

Applying `lib.munge.munge_filename` multiple times to its own output doesn't always produce the same result for filenames that originally have spaces.

In the first pass spaces are replaced with hyphens. In subsequent passes, hyphens are removed.