JCLOUD-458:Resumable Upload with live tests

"To upload data files more reliably, you can use the resumable upload protocol. This protocol allows you to resume an upload operation after a communication failure has interrupted the flow of data. It is especially useful if you are transferring large files and the likelihood of a network interruption or some other transmission failure is high, for example, when uploading from a mobile client app. It can also reduce your bandwidth usage in the event of network failures because you don't have to restart large file uploads from the beginning"
Add a sanity check for non-null `rangeUpperValue`, e.g.,

```
if (rangeUpperValue != null) {
    checkArgument(rangeLowerValue < rangeUpperValue, "lower range must less than upper range, was: %s - %s", rangeLowerValue, rangeUpperValue);
}
```