rebase -i: Handle rebase option --gpg-sign in do_pick

If `--gpg-sign` is passed to git-rebase, all replayed commits are
GPG-signed. In interactive mode, pretend `--gpg-sign` is passed to every
to-do list command by relaying `gpg_sign_opt` to `do_pick` in `do_next`.
`gpg_sign_opt` is either of the format `-S` or `-S<keyid>` which are
both supported by `do_pick`.
rebase -i: Teach do_pick the option --signoff

`do_pick` is the git-cherry-pick wrapper in git-rebase--interactive that
used to implement the to-do list commands `pick`, `reword`, `squash` and
`fixup`. To cater for the different pick behaviours, `do_pick` accepts
several options not only from the git-cherry-pick but also the
git-commit interface.

Add `--signoff` to the options pool of `do_pick`. It appends a
Signed-off-by: line using the committer identity to the log message of
the picked commit.

If `--signoff` is passed to `do_pick`, set the `rewrite` flag and relay
the option to the git-commit command line which creates the commit after
the picked changes are applied to the working directory and index.