New genotype and somaticgenotype to store more intermediate statistics

- Added new CalledGenotype and CalledSomaticGenotype (and Kryo serializers) to save more intermediate variant calling information used for filtering

This also makes a distinctions between germline and somatic calls to the filters can be applied appropriately.  Part of breaking down #147 and is dependent on #162 
can you talk (or add comments) about where/how `CalledGenotype` and `CalledSomaticGenotype` are currently used, what the interplay is between them, etc.? Seems like `BayesianQualityVariantCaller` and `SomaticLogOddsVariantCaller`, resp.?

Are they ever used together? If not, should they live in separate files? The parallel naming/structure and file-cohabitation had me assuming they're more connected than they may actually be.