Group master can manage group members

In the current implementation only __Group Owner__ can manage users within a group.

This change will grand __Group Master__ to manage users within a group. It will also prevent a master to add a user with a higher access role then it's own (__Master__ cannot create __Owner__, only __Owner__ can create __Owner__).

Use case for this change is a distributed teams where you have localized managers who are responsible for group setup but should not be able to do operations like deletion of repositories.
What do you think about:
`current_users_group = UsersGroup.where(user: current_user, group: group).first` ? Might be a little bit more expressive