sanitize in haskell
refactoring
process unless already exists
testcase for existing target
program options help and dry-run