`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

* Add `start_import_endpoint`
* Submit jobs via AJAX and use returned HTML to update job tables