Add credential profiles

This expands upon the existing configuration options in ~/.boto and /etc/boto.cfg. Instead of allowing a single set of keys under the [Credentials] heading, we allow an arbitrary amount of keypairs via headers like [profile name_of_credentials].

These can be accessed through any of the classes that inherit/extend AWSAuthConnection or AWSQueryConnection - I think I've found them all. There's now a parameter passed to the instantiator called profile_name.

If the user specifies a profile name that doesn't exist at present, or does not specify one, we default to the [Credentials] section as before. This renders the change backward compatible.

This request is on a new branch, but it is in follow-up to #1903 - https://github.com/boto/boto/pull/1903 - which I have now closed.