don't fail when we get a region which has no haplotype basis alleles
swap default GL calculations; add --experimental-gls (replaces --standard-gls)

A number of reports have recently described issues with freebayes genotyping.
These generally appear to stem from the new genotype likelihood calculations
which were implemented and tested primarily in the context of re-genotyping
putative alleles in diploids for the purpose of generating high-quality GLs
suitable for imputation.

Testing has shown that in most cases this change has little effect, but where
it does matter is also where it could be very confusing for users, such as in
polyploid organisms or in low-complexity sequence (where the "experimental" GL
calculation likes to call spurious hets).

The default (previously --standard-gls) is restored.  Now, to obtain the new
behavior you should supply --experimental-gls or provide contamination
estimates or a hard setting of contamination via --prob-contamination.
improve handling of --variant-input

This feature has been mostly broken for some time, superseded instead by
--haplotype-basis-alleles, which targets haplotype construction and genotyping
only to a particular set of alleles.  However, the logic of the haplotype
construction requires observations to support putative haplotype structures,
emitting no information about sites that are called homozygous reference.

To resolve this issue, I have fixed blocking issues for --variant-input, and
now suggest its use in the cases that:

- you want to be sure to make calls at given sites
- you are calling a number of samples or pools singly, and want to merge them
on a given set of known alleles
- you otherwise want to directly interrogate a given BAM file at given positions

--variant-input and --haplotype-basis-alleles are not quite harmonized yet.  I
am still thinking about the correct way to do this.  Nevertheless, it should
now be possible to use the feature as was intended.

To do so, normalize your variant representation by e.g. vt normalize (from
https://github.com/atks/vt).  Remove sample information and allele frequency
(AF) and count (AC) from the input file.  These (AC, AF, GT, GL) can be left if
desired, but they are used as priors when computing the site.  Then tabix index
the VCF and provide it to the algorithm via the --variant-input flag.

If you would like to restrict to only variant-input sites, also supply
--only-use-input-alleles.  Otherwise, calls will be made as normally at sites
and alleles that aren't in the variant-input file.
save a few % of runtime in re-genotyping mode

When --variant-input and --only-use-input-alleles are specified, skip positions
when there are no input alleles.
reminder to cite freebayes using DOI rather than URL
cleanup formatting of README
correct buildHaplotypeAlleles, and clarify --min-mapping-quality

Due to a logic error, buildHaplotypeAlleles was excluding reads that end
exactly at the haplotype window.  Many thanks to Severine Catreux, who made
this catch.

In this commit, -m is changed to (as documented) exclude reads with MQ < the
given value.  It previously was <=.  The default -m is set to 1.  This will
affect users by adjusting the minimum cutoff, which they should increase by 1
for equivalent behavior.
removing version_git.h from source control