add --aws-instance-profile agument.

If this argument is provided, we'll create a special credential
that knows how to build itself from the instance profile.

Readme blurb about --aws-instance-profile.
Credentials from instance metadata.
Replace Credentials obj with boto's Provider.

Credentials from IAM roles change frequently, so the credentials abstraction
isnt' sufficient. The Boto Provider does what we want, so we'll use it
instead.
Instance metadata unit tests

Patch the get_instance_metadata and see if our Instance Profile provider can
find credentials.

Special case support for boto < 2.9