I know this is a bit older. That's why I asked for a follow up. The naming is just inconsistent:

* `getByLanguage` (3.) vs. `getGroupByLanguage` vs. `getAliasGroupByLanguage`
* Same for `removeByLanguage` (3.)
* `setGroup` (2.) vs. `set` vs. `setAliasGroup`
* `hasAliasGroup` (1.) vs. `hasGroup`
* `hasGroupForLanguage` (2.) vs. `hasAliasGroupForLanguage` vs. `hasLanguage`

To sum up:

1. One time `AliasGroup`
2. Two times `Group`
3. Two times nothing