Allow retrying on failure for HTTPRangedByteAccess

The pushes the retry logic down into HTTPRangedByteAccess instead of in the tests; this allows us to also use this in the ParquetRDD class.