Refactored return of Allele Depth in AlleleBalance

In the previous commit, I made the AllelBalance annotation dependent on
the "AD" genotype annotation explicitly.  However, if no "AD" genotype
annotation was provided, this will prevent the AlleleBalance from being
reported, even if there is an AlignmentContext for which it could build
the allele depth for each sample.

To fix this problem, I have placed the calculation of the Allele Depth
in a function that uses multiple means to calculate the depth for each
allele.  Preferentially, it will use the "AD" annotation of the
genotype, but if that is not present, will fall back to the algorithm
present in version 3.1 and earlier.