restore-mtime: add --test option for dry-runs
restore-mtime: be smarter about filespecs, workdir and gitdir

Pass PATHSPEC arguments to git, which may dramatically reduce the number of
processed loglines and commits.
restore-mtime: add --directories option to update dir mtime