gerda: Better handling of exception raised on initialization

Exceptions from option parsers are now handled better. Project expansion
moved from option parsing to main so its exceptions are handled in
the same way as exceptions from command handler.
gerda: Allow fetch from change ref

Change ref is in format 'refs/changes/20/54220/71'. The change is
checked that it belongs to current project and exists.
gerda: Add reset-to subcommand

1. Test that current repository is clean
2. Check that current change were put to gerrit
3. Fetch given changeset
4. Hard-reset to it!
gerda: Add --all option to list

If this option is supplied, gerda list all changes, not just open.
gerda: On list, show changes that match all patterns

It turns out that 'and' is more useful here than 'or'.