11354 - argparse: nargs could accept range of options count
Accept regex like range '{m,n}', also tuple '(m,n)'.
(a related issue is 'greedyopt' and a port of range to that)
more tests
tweak to re expression
14191 - argparse doesn't allow optionals within positionals
patch to allow free intermix of optionals and positionals (as in optparse)
uses a parse_known_intermixed_args method that first suppresses the
positionals and does a parse, then runs a parse on the positionals.
Revision
adds: action.nargs == SUPPRESS
uses this to 'deactivate' optionals (instead of nargs=0)
Replace the 'fallback' approach with raising a TypeError.

The 'fallback' that I used earlier can be implemented with a simple 'try/except TypeError'.
Merge branch 'issue11354' into composite
Merge branch 'issue14191' into composite
adds nargs=SUPRRESS, and parse_intermixed_args method

There was conflict with the 'delayed positional' issue15112
Solve by temp setting action.required=False during phase 1 of intermixed