Raise exception if partial credentials are found

This was previously raising an unhelpful ``KeyError``.
Now, whenever a cred provider has at least the access key,
it is an error if the corresponding secret key is not also
available via the same provider.  You also get a better
error message now as well::

    Partial credentials found in config-file, missing: aws_secret_access_key

Fixes https://github.com/aws/aws-cli/issues/690

cc @kyleknap @danielgtaylor