/// <summary>
 /// Adds a switch style option to the configuration.
 /// </summary>
 /// <param name="template">Template that identifies the switch.</param>
 /// <param name="configureAction">Configuration action.</param>
 /// <returns>Configuration.</returns>
 public CommandConfiguration <TOptions> Switch(string template,
                                               Action <ArgumentConfiguration <TOptions, bool> > configureAction)
 {
     return(ConfigureArgument <bool>(template, builder => ArgumentConfiguration <TOptions, bool>
                                     .Configure(builder, configureAction)
                                     .Switch(Template.ForOptionOrSwitch(template))));
 }