gerda: allow inexact specification of project

If project was specified at command line, we now search output
of gerrit ls-projects for matches to allow things like 'gerda -p hacking'
and 'gerda -p novaclient' work.
gerda: Improve parameters derivation

This commit introduces better handling of situation when we are
inside git repository that does not have 'gerrit' remote.
gerda: Use logging for verbose and error output

This change adds --verbose aka -v option that switches on debug output.
gerda: Add ls-projects subcommand

This command lists gerrit projects that have given substring in name,
or all of them if no substring is given.

This change also turns project argument aka -p into parameter of
some of subcommands, so it is not required.
gerda: Implement fetch subcommand

This subcommand fetches (via git fetch) changeset from gerrit
to current repository. Changesets are identified by URLs or numbers.
gerda: Colorize list command output
gerda: Sanity check change number on fetch

Check that number consists of digits only.