Refactor package loaders to make the version part of BasePackageInfo
Half the loaders already had a version field in their PackageInfo class; and the version name needed to be passed almost everywhere p_info already did.
This removes some duplication and inconsistencies between loaders.
Depends on !238 (closed)
Test Plan
No hash is changed
Migrated from D6625 (view on Phabricator)