Rename Arrthorizer::GenericRole to Arrthorizer::Group

Because it just makes more sense. And we're not CBAC anymore.
Add level of indirection to ease overriding in Groups

The applies_to_user? function is used internally by Arrthorizer, but
if developers want to override the default behavior, this
applies_to_user function makes no semantic sense (for example, it takes
a superfluous parameter). The is_member? function makes semantic sense
and looks better.