added s3 upload and thumbnail generation