Add data-aware saving pattern to the s3 adapter

s3read("default/xgb")
s3read("default/xgb_data_label")

now training data does not live in the tundraContainer anymore
Since we are now using these in *two* different functions, I would move them out of `construct_s3_adapter` and `construct_data_adapter` so we are not replicating code.