Grid given a function that checks for consecutive colour groups across rows, then columns, returning the number of groups detected
Initial grid generation uses colour group checking function to discard grids that start with existing colour groups (entire grid regenerated)
Group detection now prevents moves (switches back jewels) where no color group was formed, but as no groups are removed yet, illegal moves can be made if a group exists elsewhere on the grid