Add "default_permission" field to Role model

When adding map features to an instance we want to create default permissions to edit their fields for all existing roles, but there was no way to tell what permissions to use. Now we can store a default permission on each role and use that.

Also run a data migration to set the default role on our 3 existing roles in all instances
Refactor add_all_permissions_on_model_to_role() and rename as add_default_permissions()

* Use role's default permission instead of passing a permission argument
* "instance" arg is no longer optional
* Allow adding permissions for all of an instance's roles (instead of passing explicit roles to use)
* Allow adding permissions for all Authorizable models (instead of passing explicit models to use)

Also, update test utilities to use add_default_permissions() (and related refactoring)
Merge pull request #1052 from RickMohr/add-map-feature-to-instance

Add map feature to instance