Fix an assumption in argprocess.py that all map types will have an enum of possible keys.  

Also change the import of json to come from the botocore.compat module and also set the object_pairs_hook to use OrderedDict so unit tests can be compared properly.  Dependent on https://github.com/boto/botocore/pull/185. Fixes #407.