Add command usage to man page generation
Merge pull request #89 from rlmcpherson/master

Add command usage to man page generation
Do not clear func options
Optional default values from environment variables

Tags `env:"VARIABLE_NAME"` and `env-delim:"DELIM_STRING"` can
be optionally specified to get the option default value from
the corresponding environment variable.

The delimiter, if one is defined, is used to split the value
to multiple strings, making it possible to define default values
for both slices and maps thru the environment.
Merge pull request #87 from melor/env_default

Optional default values from environment variables
Added assertDiff
Do not write trailing dot in ini sections

Fixes #94
Do not write short description for commands in ini header

Fixes #94, again.
Use dynamic programming for Levenshtein distance.

Now it doesn't take a minute to fail to autocorrect 17 characters.
Fix error type to string
Added test for command suggestion
PassDoubleDash is required for completion
Merge pull request #83 from zimmski/mention-double-dash

PassDoubleDash is required for completion
refactor completion into Parser.ParseArgs
test required options
test an entire completion structure