generalize Alleles to contain refBases & altBases, take 2

PROBABLY DON'T MERGE: this depends on the MD-tag fix in ADAM `0.13.1-SNAPSHOT`, which Frank estimated will go out in a release later this week. In the meantime, no need to have `master` point at an ADAM snapshot.

this PR includes indel code and some refactorings of Pileups, GenotypeAlleles, and others to support a universal notion of an Allele that is determined by multiple reference bases and multiple sequence bases.

I back-ported existing callers to be more general of their handling of variants/alleles, accordingly.

This should let us reuse a lot of @arahuja's bayesian/log-odds variant-analysis/filtering code across callers more easily.
@arahuja why do we care if the tumor genotype varies from the reference? in theory, if normal varies from reference and tumor does not, should that be called as a somatic variant?