Add migration to fix species related API errors

In 97b4ea759c some species fields were renamed. These field names were
embedded, as strings, in both FieldPermission models and the Instance
mobile field configuration dictionaries, causing API request to break.

The migration in this commit updates the string values to match the new
Species field names.

Fixes #1769
Merge pull request #1770 from jwalgran/topic/fix-api-error-after-renaming-species-fields

Add migration to fix species related API errors
`DotDict` now supports pickling

Celery task was aborting because its `SpeciesImportEvent` couldn't be unpickled.
That was because its `instance` attribute has a `JSONField`, which uses `DotDict`, which lacked pickling support.
Implement job submission front end

* Make the importer's "list" page use real data (merge OTM1 template with OTM2 prototype)
* Add `start_import_endpoint`
* Submit jobs via AJAX and use returned HTML to update job tables
* When "Import" button pressed, show spinner and disable it
Un-indent template
Rename `list.html` as `imports.html`
Merge pull request #1771 from RickMohr/importer-list-uses-real-data

Importer "list" page now works (for species imports)
In importer, separate `species.py` and `trees.py` from models.py
Merge pull request #1774 from RickMohr/split-importer-models

In importer, separate `species.py` and `trees.py` from models.py
Merge remote-tracking branch 'OpenTreeMap/release'
Use event delegation in `importList.js` so events keep working after updates
Add function for nullsafe, tzsafe comparison
Merge pull request #1776 from steventlamb/topic/dates

Add function for nullsafe, tzsafe comparison
Merge pull request #1775 from RickMohr/refactor-import-list-js

Use event delegation in `importList.js` so events keep working after updates
Provide public api for _previous_state
Add helper function for comparing foreign keys
Merge pull request #1779 from steventlamb/topic/update_audit_api

Topic/update audit api
Decouple Auditable from Authorizable

A new class has been introduced, PendingAuditable, which mixes Auditable and
Authorizable toggether in a cleaner way.
Add support for bulk_create_with_user