Add configuration and interface permission checks to DeviceImpl.

New methods to check whether a client has permission to access a device
configuration or interface have been added to the PermissionProvider
interface. DeviceManagerImpl then uses the new Bind() method to give
DeviceImpl a new pointer to the object it has been using for permission
checks. Permission checks are not required for bulk, interrupt and
isochronous transfers because they require the interface to be claimed
first.

BUG=492204

Review URL: https://codereview.chromium.org/1369643002

Cr-Commit-Position: refs/heads/master@{#351408}
19 files changed