Add Stewardship collection UDFs when creating instances
Return stewardship w/ default mobile fields

Because this is adding a new type of field group that the mobile do not
have the ability to render yet, these changes are only available in v3 of
the API.

This is intended to be the final feature in v3, and all new breaking
changes should be part of v4.
Merge pull request #1494 from maurizi/collection-udfs-in-api

Return stewardship w/ default mobile fields
Refactor and centralize permission checking logic
Add meta perms for mobile apps
Merge pull request #1500 from steventlamb/topic/mobile_perms

Topic/mobile perms
Fix styling of export modal

fixes #1490 on github
Add constraint to InstanceUser to prevent duplicates

Also adds a data migration to remove any duplicates that snuck in.
Users should only have one InstanceUser per Instance.
Merge pull request #1502 from steventlamb/topic/fix_modals

Fix styling of export modal
Merge pull request #1503 from maurizi/fix-duplicate-instanceusers

Add constraint to InstanceUser to prevent duplicates
Add sort key to default mobile api fields

Because the mobile clients will merge together plot and tree stewardship,
we need to signal to the clients how to sort the merged lists of
stewardship events.

We have no mechanism for changing collection UDF field
definitions at the moment, but if/when we add it this will cause us to need
to take care to not allow the definitions of plot and tree stewardship to
get out of sync
Merge pull request #1504 from maurizi/fix-duplicate-instanceusers

Add sort key to default mobile api fields
Add neighborhoods to migrator
Return actual JSON, not JSON strings in API instance fields

The data types for collection UDFs were being sent as the string
representation of the underlying JSON.  To fix this, we deserialize it to a
standard python list before reserializing the entire dictionary
Merge pull request #1506 from steventlamb/topic/add_neighborhoods_to_migrator

Add neighborhoods to migrator
Fix lint
Merge pull request #1507 from maurizi/fix-stewardship-api-json

Return actual JSON, not JSON strings in API instance fields
Add constraint to InstanceUser to prevent duplicates

Also adds a data migration to remove any duplicates that snuck in.
Users should only have one InstanceUser per Instance.
Merge pull request #1509 from maurizi/fix-duplicate-instanceusers

Add constraint to InstanceUser to prevent duplicates
Fix Collection UDF date serialization

We were not correctly formatted dates for collection UDFs, which broke the
API for editing, since the server sent dates down in a format it could
not parse.