Grab credentials from config files

Try to grab credentials from config files if not supplied from `Credentials`::`factory()` or Options. Supported formats include aws-cli, aws-credential (old awscli), and boto, detected in alphabetical order. 

Test cases included, also fixed the issue to fail some tests if env `AWS_ACCESS_KEY_ID` and `AWS_SECRET_KEY` were set.