Converting overwrite to only check s3 once

Also refactoring many of the tests.
Something like "unexpected data event," maybe? The way it's currently worded reads like half of an error. Although it's implicit what occurred (there was data), all that's explicit is what was expected (no data). The emphasis seems backwards to me.