Removed requirement to have short name for every option.

CommandLineOption can now be constructed with a null/empty/whitespace
short name, provided a long name is also specified. New tests added to
reflect this (in FluentCommandLineParserTests).

Setup<T>(string shortOption, string longOption) throws an
ArgumentOutOfRangeException for shortOption if neither is specified.

The example in FluentCommandLineParserTests is updated to include an
option which has only a long name and no specified short name, and also
with an option group to ensure that this functionality is not broken by
the changes.
Merge pull request #16 from jen20/no-short-options

Removed requirement to have short name for every option.
Changed setup API such that the following methods are used:

Setup<T>(char shortOption)
Setup<T>(string longOption)
Setup<T>(char shortOption, string longOption)

Some tests (e.g. null/empty short option) no longer required. Added tests
to prevent short option names of ':' and '='.

Internally we still use strings.
Merge pull request #18 from jen20/no-short-options

Implementation for #17
tabify
correcting type in CreateSut() method. Also added two useful methods for creating mocks/anonymous objects
added new validators around the option names separating the logic into its own concern
integrate the new validator and remove the old dead code.
options should be case sensitive
replaced ArgumentOutOfRange with InvalidOptionNameException with meaningful error messages. This is because of the breaking change added which may cause problems when upgrading. The error messages should go some distance to help resolve any issues.
updated test filename to reflect the sut
updated message
fixed tests
updated to include exceptions thrown after changes
added back the Setup<T>(string, string) method to ease the crossover - made it obsolete and thrown some tests to ensure it behaves the same
let the validator decide if these values are valid (so we get correct exceptions and messages bubbled)
update readme to reflect shortname change to char
added initial prototype of the fluent builder
added ability to enable/disable case sensitive comparisons
use comparison / IsCaseSensitive defined in the parser.