Separate option creation from registration
Updated readme.
Improving comments
Added abstract Completed() method as a hook.
New attribute [Required]
Sample driver now uses [Required]
Test that [Required] is respected
Checking for Required parameter usage.
Support for reporting errors if required options missing.
Additional test
Type extensions for internal use
Tests for type extensions
Extension method string.As<T> for conversion.
New test for string.As<>.
Improved exception handling
Relocating CommandLineSwitch factory method.
Moving IsParameter() to CommandLineOptionFactory
Relocate CreateParameters() to CommandLineOptionFactory
Modify CommandLineParameter into generic class
Code analysis fixes.