Require git-gerrit.remote variable and make git-gerrit.username optional

I can't avoid knowing the git remote referring to the Gerrit
project. If I use the URL instead of the remote name in 'git pull' the
remote branches aren't updated as they should.

The username shouldn't be required because if it's not known it will
be asked for by 'git credential'.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Always rebase a change when it's first pushed

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Update README

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Make --verbose a local option

It was a global option but was being used just by the commands 'query'
and 'show'.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Update README

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Check the TOPIC name in 'new'

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Fix upstream checkout in 'new'

We have to specify the upstream branch name because we may not be in
it.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Change 'query' header format

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Change 'config' output

Now it's simply a shortcut to "git config --get-regexp
\"^git-gerrit\\.\"", which is more useful to the user. Early it showed
even some configuration variables created internally by git-gerrit,
which would confuse her.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Subsume 'push' --update option into --rebase

Now we always update when we rebase as it isn't useful to update
without rebasing.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Substitute --no-wait-for-merge for --wait-for-merge in 'submit'

Now we wait by default.

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>
Complete documentation (almost)

Signed-off-by: Gustavo L. de M. Chaves <gnustavo@cpan.org>