Compute a new set of GroupIDs along an edge loop under the assumption that the edge loop is about to be split and new geometry introduced. The decision is based on a provided EdgesShouldHaveSameGroupFunc function which is called with sequential pairs of edges. For example if this function returns true when the GroupIDs are the same on both edges, then this function will create a new GroupID for each sequential span of non-matching GroupIDs (ie often the "expected" behavior).