Adding indel realignment transform.

Adding indel realignment transform. Composed of several steps:

* Targets for realignment are generated
* Realignment candidates are generated using the reads at the target site
* If candidates lead to a sufficient improvement, reads are realigned

Significant thanks go to @AndreSchumacher . Although the squashed down commits do not show his contribution, André was critical to this work, and contributed significantly to the implementation and test suite.