Refactor the base package loader to load directly from tarballs
instead of dumping on disk and loading from the disk.
This causes all sorts of issues on edge cases:
- PermissionError when the tarball has overly restrictive read permissions
- OverflowError: timestamp out of range for platform time_t when timestamps in the tarball exceed what the FS supports
- FileExistsError when the same entry is present multiple times in the same tarball (though we may need an update in the model to support this)
- probably filename encoding issues, though it doesn't seem to happen in practice
Additionally, reading directly from tarballs may have performance benefits, as it removes disk writes. (Or lowers RAM usage on workers using a tmpfs, but they currently don't)
Migrated from T3244 (view on Phabricator)