Fix bug that argument is processed twice with concatenated short options
Adjust narg("*") handling for optinal arguments

The optional argument with nargs("*") and without default set is
not given in command-line, the result is now null instead of
empty list.

The optional argument with nargs("*") is given in command-line
with emtpy list, the result is now empty list. It will overwrite
existing value or appened to the existing list in case of
append() action.
Update doc
Remove useless conditional
Update doc
Support argument abbreviations
Update usage.apt
Support subcommand abbreviations
Sort ambiguous options in order to make unit test easier
Update usage.apt
Throw exception if no nameOrFlags is given
Update site
Format files
Format pom.xml
Use Sphinx as documentation tool
Add ReflectArgumentType

ReflectArgumentType is an enhanced version of ConstructorArgumentType.
It first tries to convert given String to desired type using valueOf
static method of the type. If it failed, use the constructor of given
type just like a ConstructorArgumentType. Since enums have valueOf
static method, ReflectArgumentType works with enums as well.
The ReflectArgumentType effectively deprecates
ConstructorArgumentType and EnumArgumentType.
ReflectArgumentType: Call setAccessible(true) for valueOf method

This is needed to access private Object's method
ReflectArgumentType: Fixup doc
Update manual according to the introduction of ReflectArgumentType
ReflectArgumentType: Special handling for enums and remove setAccessible

Use Enum.valueOf() to get desired enum value from String.
Calling setAccessible(true) of valueOf method was removed, because
it may cause some problems, for example, application wants to
hide valueOf method.