How git cli subset might look like in docopt.
Add examples of unsupported syntax to think about.
Show help only if pattern matched.

This makes potentially easier to implement subparsers. Previously help
would be shown no matter if the pattern for help option is matched which
means that help option would always triger help for the top-level
parser, not allowing the option to propogate to the sub-parser.
Add experimental _any_options parameter.

_any_options=True changes behavior of [options] syntax, allowing it to
match even those options that were not mentioned in the DSL code.  This
alows to dispatch from a top-level parser to sub-parser without
top-level parser knowing about what options sub-parsers support.

Although any options are allowed, their values are discarded now, which
will be fixed in the following commits.
Working git CLI subset.

Thanks to _any_options parameter, git.py can dispatch options to
sub-parsers correctly.

In order for sub-parsers' help to be triggered correctly the top-level
parser's help was implemented manually (help=False), otherwise -h|--help
would always trigger top-level parser's help even when invoked as
`subcommand -h`. This is a bit unfortunate.
Various improvements of git CLI implementation.
Minor adjustments to git CLI implementation.
Revert c4e85a7.
-am Parse unexpected options correctly if _any_options.
Make git_example.py part of rest of git CLI.
Capture _any_options bug.
Add new any_options_example.py.
Capture any_options bug.
Capture success.
Cleanup print calls and commented-out code.
Capture 2 issues.
Minor cleanup.
Make [options] mean options not in usage-pattern.
Merge branch 'any-options-example' into any-options
Merge branch 'master' into any-options