Update the GroupInfo array by finding group-connected components. Note that this may result in multiple GroupInfo items with the same GroupID, if they are not connected-components. Computing connected components is somewhat expensive. In addition, for each component, if it is more than 2 triangles it will be "eroded" down a single triangle to determine the group "center", also somewhat expensive. This step can be computed in parallel if bParallel is true.