Wrote some test cases for GenomicRegion and fixed minor bugs. Seems to work correctly. Made GenomicRegion.split return the full region as both array elements when the split coordinate is the region's start coordinate