ec2 inventory: Try and create the cache directory if it doesn't exist

This allows different cache directories for different configs without
having to pre-create the directories.
ec2 inventory: Add support for explicit credentials in the config file

This allows a user to simply manage different configs for different AWS
accounts. Combined with the EC2_INI_PATH environment variable, users
can easily create dynamic inventory wrapper scripts for each account.