auth: Revoke permissions on dropped role resources
auth: Revoke permissions on dropped role resources

Previously, when a table or keyspace was dropped, the
authorizer (through a `migration_listener`) automatically dropped all
permissions granted on that resource.

Likewise, when a role is granted permissions and the role is dropped,
all permissions granted to the role are dropped.

In this change, we now treat role resources just like table and keyspace
resources: if a permission is granted on a role (like "GRANT AUTHORIZE
ON ROLE qa TO phil") and the "qa" role is dropped, then all permissions
on the "qa" role resource are also dropped.

scylladb/scylla,duarten/scylla,duarten/scylla,avikivity/scylla,scylladb/scylla,avikivity/scylla,duarten/scylla,scylladb/scylla,avikivity/scylla,scylladb/scylla