Fix cascading privilege revoke to stop if privileges are
still held (Tom Lane)

If we revoke a grant option from some role X, but X still holds that option via a grant
from someone else, we should not recursively revoke the
corresponding privilege from role(s) Y that X had granted it to.