refactored retries for putStream into a function. introduced additional error state in oResponse.statusCode to ensure no partial uploads occured. Ran a few dozen test cases, all passing with first 2 retries getting a bad status code