ability not to sort options

new constructor for CmdLineParser to optionally not sort options. This is because the order of the options might be purposeful, for example grouping them logically.
You're mixing fluent interface with some kind of modified builder pattern. What are the benefits of the new instances returned over and over again? In original builder pattern it's the instance created only *once*. You're creating a new full instance per setter-call.

Returning just *this* would be the most simple and obvious implementation.