Constructs an option.
Single-character short name, or null.
Long name, or null.
Name of the parameter.
Description of the option.
Whether the option is required.
Default value of the parameter, or null.
AssertionError if option is required and default value is not null.
Constructs an option.