Paired end updates - counts now work for paired-end reads, where a pair is only counted once, strand specific

Now, instead of looking at each fragment individually, you can optionally reverse the second read, so that the
entire read is taken as a unit. Now, if the entire read is in the wrong orientation, it can be properly excluded.

This makes a small change to the way mapped read counts are calculated, as this can now be a float instead of
always an int.  This also causes a change to the way exon reads are calculated, as both pairs of the read are
considered as a whole unit.  Meaning, if the first fragment is in a common exon, and the second fragment is in
an alternative exon, the entire read is counted as a "common" read and the isn't taken as an "other" read for
the altindex calculation (which is dubious anyway).

For exon-level numbers, I recommend processing the fragements separately to avoid these issues. However, the
actual counts will be correct (# of reads that are present in an exon, and the number of reads that exclude
the exon).