Group Configuration: create, edit, delete groups

**Ticket:** [BLD-1110](https://openedx.atlassian.net/browse/BLD-1110)

**Acceptance criteria:**
* Two Groups by default:
  * Both with 50% allocation
  * Default names Group A and Group B.
* Adding another group should reduce the allocations of the existing groups equally, so that all groups are equally allocated. (This should already be handled by the split_test module, but we should test to make sure this reflects correctly in the Group Configurations page.)
  * Default name of new groups should follow alphabetically: Group C, Group D, etc. 
* Group names should be editable. 
* Deleting a group should remove the group, reallocate the percentages equally between the existing groups. 

**sandbox:** http://polesye.m.sandbox.edx.org/ 

@andy-armstrong , @cahrens , @frrrances , @mhoeber , @explorerleslie please review.
> How are placeholders used (as opposed to default names)?

Default name is generated in a way to get next unique letter to avoid situation when `Group B` will be before `Group A` after add-remove operations.
Placeholders are generated in the order of the elements.