ISSUE: GetGroups returned a list of incomplete Group objects that did not have all their fields populated for example UserNames is null for all of the groups returned.
CHANGE: Updated GetGroups to use GetGroup to populate the Group list since it sets all properties of the object.
ISSUE: GetGroup would return a Group object missing the SubGroups because of an access with a key that was incorrectly cased. If the returned Group is used to update the repository, SubGroup members are removed.
CHANGE: Updated case of SubGroup key to Subgroup to match Group Spec.