Based on code review:

- GroupMembers DTO has been removed
- DAO for GroupMembers now takes primarily strings as arguments
- Extra DBO made for caching the parents of UserGroups
+ Deadlock consideration
Moved some code around to more stylish places.