pass error to callback early in finishSinglePart
otherwise, setting `Location` on `data` will raise.
Merge branch 's3-managed-upload-catchPartErrors' into s3-managed-upload-catchup