We have two contradictory precedence needs that are impossible to
satisfy because we're losing knowledge of the source of data as
we build the ultimate dict of data. If we carry the argparse data
along in a separate bucket for longer, we can check to see if it's
there so that it can win, but so that in situations where kwargs
is complex and contains both a top-level and an auth dict we don't
assume that the values that are not in the auth dict came from
argparse.
By doing this, we can establish that precedence for auth args is:
- argparse
- auth dict
- top level kwargs
Change-Id: I9eca5937077f5873f7896b6745951fb8d8c4747c