Add read retries to avoid problems related to s3 eventual consistency

To avoid cases where exists() returns True while get_contents() raises an exception due to aws s3 us-standard behavior, I've added a 3-times retry with a 100 ms sleep between retries.
I should be an acceptable trade off between increasing response time and avoiding errors on read.