Only attempt file upload to S3 if validation is passed

In some cases files were being uploaded before all validation had taken place.  This ensures file uploads are only attempted after as much validation as possible has passed without error.

Addresses this card: https://www.agileplannerapp.com/boards/187120/cards/7949