Problem/Motivation
\Drupal\user\PermissionHandler::buildPermissionsYaml()
Will override the provider for permissions if it has been set by the permission callback.
Proposed resolution
Set the provider only if not already explicitly set.
Remaining tasks
Add tests
User interface changes
n/a
API changes
Adds the ability to set the provider for a permission.
Data model changes
none