Reads donor VCFs once and returns a sorted, de-duplicated GRanges of
biallelic heterozygous SNPs spanning all requested donors. The returned
object carries, per site, the set of donors heterozygous there
($donorMembership, a CharacterList), so the donor mask can be applied
later without re-reading VCFs. Save this once and pass it to
DsASC.gatk(..., masterGr = ) in each per-cell-type job to keep all
objects row-aligned.
buildMasterSNPs(donors, vcfDir, genome)A GRanges with REF, ALT, snpId, donorMembership metadata; names() = snpId.