rebase: add the --signoff option

- signoff=--signoff works because git-am, git-cherry-pick all share
  the same option name
- -s is already used for the strategy option, define long option only
cherry-pick: add --reset-author option

If `--reset-author` is specified on the command line, forward the
option to git-commit when recreating the commit after the changes are
applied.

This option makes git-cherry-pick lie about the author name and date.
It is useful to bulk rewrite the authorship of heavily edited commits
before publishing.

git-commit with `--reset-author` has been used to commit
cherry-picked changes for long now. The `--no-commit` command line
can now be skipped.

Add test.
rebase: add the --reset-author option

- git-am has no reset-author functionality