Merge pull request #125 from chaoflow/help-all

Help all, print help for a command and all its subcommands
Merge pull request #126 from chaoflow/option-to-disable-calling-main

possibility to disable calling main if nested_command is called
cli: add facility to generate static completion files for zsh

the generator is invoked by calling --help-zsh-comp
cli: add dynamic completion facility
cli: move huge part from Application in extra CompletionMixin
cli/application: use isinstance instead of hasattr to check whether the mixin is used
cli/completion: cleanup of switch grouping
cli/completion: various minor code cleanups. one fix for exclude switches.
cli/completion: code comments
cli/application: add comments to completion specific parts
Fix completion
completion: tell completion that everything starting with a dash is an option

and not an argument. like this, options complete even in the presence of
uncompletable arguments.
add posargs argument to complete methods

posargs is a dictionary which maps to the positional arguments.
add support for switches occuring multiple times (swinfo.list)
completion: fix import bug
docstring pep257 and some wording
no spaces on last lines of zsh snippets
rename: escape instead of pre_quote
some comment cleanup