Remove group name validation case sensitivity

For issue mentioned [here](https://meta.discourse.org/t/group-names-are-case-insensitive-can-be-duplicated-typed-wrong-in-invite-csv/23002/3)
I tried to make this as un-gnarly as possible.

Basic steps:

- get `results`, a result set of group ids which have duplicate names
- get `groups`, the groups associated with those ids
- group the `groups` by their case-insensitive name, and iterate through them
- for each case-insensitive name, leave the first group name as is, and update all further instances to include an index on the end of the group name

(for example, 'test_case', 'TEST_CASE' becomes 'test_case', 'TEST_CASE_2')