Add retry and timeout as params to retrieving metadata service

Fixes #198.

I did not add any config vars to the session to set these default values.  However, I think it makes sense to add this (similar to how you can set these values in a boto config file).  I'd like to send that as a separate pull request.

This only updates the low level metadata retrieval code so that it can be parameterized the number of retries and the connection timeouts.