Refactor how getFlatPackageInfo runs xar

Based on reports of failures when creating pkginfos from certain flat packages (from anecdotal reports, those created by WhiteBox' Packages) it was determined that in those cases getFlatPackageInfo will fail due to xar extraction errors with one or more files in the flat package. Since getFlatPackageInfo only processes the Distribution or PackageInfo file(s) in the flat package it makes sense to only extract those files from the flat package. While the xar extract command may still fail when extracting a Distribution or PackageInfo file, it should reduce overall failure rates. As an additional benefit this should also speed up overall makepkginfo speed by not having to extract flat packages in their entirety.