List a User's, Group's, or Org's Permissions
Is there a simple way to gather a list of all permission that a specific User, User Group, or Organization (or Org Unit) has been granted? By this I'm suggesting a Service that takes a user, group, or org as input and returns a list of the Run time permissions, Design time permissions, and Visibility permissions that have been granted to that entity.
The purpose of this service would be to quickly see everything a user has access to without having to manually check every entity. This could also help diagnosing issues with permissions.
One idea to accomplish this is to loop through all entities on the platform, run the "Get permissions for user/group/org" services against each one, and return the list of all permissions. I know this isn't impossible, but it also doesn't seem efficient. However, I can't think of any other way to do this.
Ideas or insight?

