That gives me an idea: what if the permission system defines roles for apps, and grants exactly the permissions needed for an app to fill its role? If there is a “screen reader” role, then it's obviously suspicious if an app claiming to be a screen reader needs any other permissions.