Fixes #5221: Adds a helper method to allow a model instance to inquire if the instance is authorized for a particular permission.

Model instances can be asked directly if they are authorized for a particular
permission by, for example, calling 'instance.authorized?(:view_model)'. This
abstracts and centralizes some of the repetitiveness of having to instantiate
an authorizer and pass the instance to the 'can?' method as the object of inquiry.
Fixes #5664 - Host filters can use taxonomies

Also disables taxonomy filters on resources that do not support them.
fixes #5690 - determine host taxonomy fact based on setting value
Fixes #5689 - Plugin permissions are migrated too
fixes #3492 - API v2 nested routes for each controller