fixed: Path substitution didn't work for files (only library items)
changed: Have substitude path modify the path, if required
changed: Pass listdir to dir job (thanks JM)