Ah, nice :smile: 
I just saw in the files_external project that S3 and Swift have a slightly different implementation. It might make sense to consolidate them at some point.