guard againstsoft-clip edge cases

Soft clips can occur where there is not reference sequence.  When
generating the allele do notprocess the reference sequence.
use cast to get correct call to max(...)

To resolve issue reported by C here:
http://blog.gkno.me/post/29962850248/getting-started-with-gkno#disqus_thread
add empirical allele observation bias adjustment table

By specifying --observation-bias users may provide a table which
describes the empirical mapping bias against alleles given the number of
bases subtracted or added between the allele and the reference.  This is
intended to improve genotype likelihood (GL) estimates and downstream
imputation and processing of these likelihoods.
version 0.9.8
set default input filters (-C 2 -F 0.2)

In testing, these input filters on the minimum support for a given
allele have been found to provide a very good balance between
sensitivity and specificity, reducing the need for users to place
complex filters on their VCF output.

We use them by default in our work in the 1000 Genomes project
low-coverage (4-6x) data.

However, They may not be ideal in polyploid or pooled systems or
low-frequency somatic variant detection, so users working in such
contexts should set them to a level appropriate for their needs.
*actually* set defaults in Parametecs.cpp

Sets -C 2 -F 0.2 by default.
resolve #43, add segfault handler

In #43, challisd reports a segfault when using input alleles.  This was
caused by 0-length allele artifacts generated when parsing the input
VCF.

Additionally, when compiled in debug mode, the segfault handler will now
print a stacktrace.
improve scaling of probabilities, resolve #42

When using --allele-balance-priors, --binomial-obs-priors, scale
probabilities according to the number of possible observation
permutations.

Resolve #42 by preventing use of soft-clipped sequence at the beginning
of the reference.
track total genotyping iterations, change iteration defaults
resolve targeting issue

The last position in a region was being excluded.  This ensures that the
entire target is processed.  The documentation is updated to reflect
this change.  scripts/fasta_generate_regions.py will now make completely
covering regions.
change to help text to reflect region spec change
use of big number library for improved numerical precision (ttmath)

Removes the QUAL limit of 50000, more experimentation may be required to
apply the method to the marginal genotype quality calculations.
pooled frequency-based calling (and nan guard)

Separate --pooled into --pooled-discrete (old behavior) and
--pooled-continuous.  In the continuous case, allele observation
characteristics are reported for all alleles which passed the input
filters (default -F 0.2 -C 2).  Pooled continuous calling does not
modify the Bayesian algorithm, and is effectively orthogonal to other
parameters.

For instance, --pooled-discrete and --pooled-continuous can be specified
toether.  The called genotypes will be affected by the --ploidy setting
and --pooled-discrete flags, but the output will reflect all observed
alleles passing input filters a the site.

Also, guard against nan's in output (Utility.cpp).
version 0.9.9, set as default "mappability" priors

freebayes can estimate the probability that the loci in question is
accurately mapped using a number of features extracted from read
placement and distribution among samples.

This framework effectively extends the basic Bayesian formulation from
P(genotypes | reads) to P(genotypes, properly-mapped alleles | reads).
As such, the QUAL value must be understood to incorporate expectations
about mappability derived from observation features such as allele
balance, strand bias, and read placement relative to the allele.

This commit sets this model on by default.

To turn OFF this behavior, use -wVa or:
    --hwe-priors-off \
    --binomial-obs-priors-off \
    --allele-balance-priors-off

Extensive testing showed that this combination of parameters provided
excellent sensitivity and specificity at all levels of genomic coverage
and numbers of samples.  The largest improvement in performance is for
low-coverage resequencing (<5x coverage, >1000 samples) experiments.
Higher-coverage experiments, where data tends to overwhelm priors,
should not be affected.
--no-marginals now means "no-GQ's"
turn off genotype qualities by default

Genotype qualities (reported as GQ in the output) are marginal
likelihoods of the specific genotype for a specific sample given the
data and Bayesian model.  They may be helpful for filtering or assessing
genotyping accuracy, but they take a lot of time to compute because the
current method for estimating them is O(N^2) in the number of samples.
For more than 10 low-coverage samples, GQ estimation becomes the
dominant use of compute time.  For 1000 samples, GQ estimation is 90% of
compute time.

Prior to this commit it was possible to disable them using
--no-marginals.  I've removed this crypticly-named parameter, set GQ
estimation off by default, and added --genotype-qualities, which turns
them back on.

Users who wish to use fill out the GQ field (old behavior) must provide
--genotype-qualities.
Merge git://github.com/ekg/freebayes