Fix regression in EC2 credential provider parsing

The only parser basically had::

    config = dict(line.split('=', 1) for line in lines if '=' in line)
   access_key = config.get('AWSAccessKeyId')
   secret_key = config.get('AWSSecretKey')

Which ignores lines that don't have a '=' char in it. This behavior has been
re-added and additional tests to cover a few of these edge cases have also
been added.

cc @danielgtaylor