Split ExportUserArchive out of ExportCsvFile (PR #10550)

We need to add more files to the user archive export, and sharing a class with the single-file CSV exports is seriously cramping. Split it out to its own job, and rework the tests.


Follow-up this enables (no PR yet): https://github.com/riking/discourse/compare/user-export-improvements...riking:user-export-improvements-2

I think splitting off these jobs is overdue. This is looking good.

(note: performed rebase&merge instead of squash to preserve commit granularity)