Updated pair haplotype scoring method

This commit removes our current pair haplotype scoring method and introduces a latent variable model that is used for haplotype scoring.

This model treats the haplotypes in the pair as a generative cluster that produce reads. We perform an argmax over the set of all read mappings, given latent variables that decide which cluster the reads should belong to, on the basis of their relative alignment likelihoods. We constraint these mappings by a multinomial distribution that compensates for the number of reads that should map to each haplotype, given the relative haplotype lengths. The argmax process is all done in log10 space.
 
Additionally, this commit:

* Fixes a build failure caused by downstream changes in [ADAM](http://www.github.com/bigdatagenomics/adam) that changed a predicate type
* Fixes the het SNP testcase that was modified in #61
* Adds a unit test on a verified SNP from NA12878