BDD User Group operations

These changes are implementations of BDD's 'Given' Steps for creating and removing User Groups.
These functions will traverse the User Groups tree and create and / or delete specific User Group(s) depending on if they are or are not found before, in the tree.
Overall, it would improve readability if your variables were named based on what they contain. Here, `$parentGroup` could/should be `$parentGroupName`. The same is valid in many places in the code, like the choice of `Object` as the suffix, while "object" in our domain language would mean a ValueObject. Here, it is either a Location or an Object.