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