Add pair-splitting functions (and unit tests)
Migrate map splitting to use the pair splitters