Updated team creation

- NaiveGroupGeneration now creates balanced teams that are less than or
equal to the group size designated by the user
- creates the largest groups possible