Adding utilities for read trimming.

This pull request adds a few utilities for read trimming, as a first start towards read error correction. This pull request contains:

* An update to the ADAMRecord schema to add fields for bases trimmed from the read start/end. After alignment, these fields are redundant (with hard clipping in the CIGAR), but the fields are important for trimming performed before alignment. These fields are added in the SAMRecordConverter.
* Two new RDD functions. One performs a fixed length trim to all reads. A second function trims the prefix/suffix of all reads in a read group based on the geometric mean of the error probability at that position.
* An update to the _Transform_ CLI module, to add these two functions as possible transforms.
* A correction to the CycleCovariate that correctly calculates the sequencing cycle for hard clipped reads.