Well, let's talk about this in more detail -- right now, the GenomicRegionPartitioner only partitions ReferencePosition objects, so the way that it handles unmapped reads will be dependent on the way those unmapped reads are keyed with ReferencePositions.  

Maybe we should talk about having a "null" or "unmapped" ReferencePosition object (like Stream.Empty, etc.) which could be handled in a consistent way by the GenomicRegionPartitioner and other positional operations?