CRM-11925 - Remove DrupalBase::getAllModulePermissions() because:

1. We only need to support hook_permissions for Civi ext-modules, so we don't need a special way to invoke that hook in Drupal.
2. The parent class implements the function in a simpler/more portable way.
CRM-11925 - CRM_Utils_Hook - Remove moduleImplements.

The Drupal implementation is good, but we don't need the functionality, and
it's a bit of a liability because the design isn't portable to Joomla.
Keeping it might encourage others to write unportable hook code.

However, if we find that we do need the functionality, then we should use
this code as a starting point.  (Aside: For a non-Drupal example, the
WordPress implementation is better than the Joomla implementation.  The WP
version looks like it would still work with Civi ext-modules.)
CRM-11925 - Extract Drupal::filterPermissions from Drupal::getModulePermissions

Permission-enumeration is only being used with Civi ext-modules, so the
hook-invocation can be done in another (more portable) spot. However,
the string-length-limit appears to be specific to D7's permission-store,
so it'll need to stay in this class (as "filterPermissions").
CRM-11925 - Call Drupal::filterPermissions when writing to permission-store (rather than during permission-enumeration)
CRM-11925 - Loosen coupling between permission enumeration (getModulePermissions) and storage (upgradePermissions)
CRM-11925 - Only run cleanupPermissions/uninstallPermissions if our CMS driver supports it
CRM-11925 - Allow permission-enumeration on all platforms. (This facilitates error-reporting when a module is installed on an incompatible CMS.)
CRM-11925 - Remove filterPermissions.

The filtering presents an imperfect facade (see JIRA)
Doc tweak
CRM-11925 - Modify upgradePermissions to work with all permissions (not just single-module permissions)
CRM-11925 - Fix error message
CRM-11925 - Add comments to explain why D6 works with empty permission functions
Merge pull request #90 from totten/hook_permissions

CRM-11925 Fix, cleanup for hook_permissions