title: argparse conflict resolver for options in subcommands turns keyword argument into positional argument
body: <p>I have a Python script that runs two sub-commands who accept the same option, <code>--config</code>. I would like to create a third sub-command that can run the first two subcommands together, sequentially.</p>
  
  <p>Using argparse, I've created a subparser for each sub-command, as well as a third subparser, whose parents are the two sub-commands. Just to clarify:</p>
  
  <pre class="lang-python prettyprint-override"><code>subcommand1 = subparsers.add_parser('subcommand1')
  subcommand1.add_argument('--config', help="The config")
  
  subcommand2 = subparsers.add_parser('subcommand2')
  subcommand2.add_argument('--config', help="The config")
  
  wrappercommand = subparsers.add_parser('wrappercommand', 
                                         parents=[subcommand1, subcommand2], 
                                         conflict_handler='resolve')
  </code></pre>
  
  <p>Everything works when I run wrappercommand, or subcommand2. However, subcommand1 breaks, with this as the output:</p>
  
  <pre><code>$ run_command.py subcommand1 --config path_to_config.ini
  
  usage: run_command.py subcommand1 config 
  
  optional arguments:
    help                  show this help message and exit
    config                The config
  </code></pre>
  
  <p>It looks like argparse has turned a keyword arg ("--config") into a positional one ("config"). Is this the expected behavior when conflicting options are resolved by argparse? </p>