Limit photo selection to images. Fixes #296.

This generally makes the file picker only accept image types. The
backend does additional checks since this cannot be relied upon.
Migrate ITreeRegion table to have one row per region

Before the data migration, each i-Tree region had many rows in the ITreeRegion table. Each row's multipolygon contained one polygon.
After the data migration, each i-Tree region has one row in the ITreeRegion table. Each row's multipolygon contains many polygons.

Also:
* We now declare that i-Tree region codes must be unique in the ITreeRegion table
* For me, running the data migration causes some "Message too long" errors to be printed, apparently harmless.
* Timing eco benefits computation on 28000 trees in a Philly-area treemap, this change made no appreciable difference.
Provide a UI for getting detail links for audits

Fixes #875
Merge pull request #918 from ahinz/fix/296/limit-to-images

Limit photo selection to images. Fixes #296.
Merge pull request #937 from ahinz/fix/875/audit-details

Provide a UI for getting detail links for audits
Make unit tests work with a populated ITreeRegion table

* Some tests assumed the table was empty -- fixed to work with a populated table
* Some tests truncated the table -- fixed to not disturb it
Merge pull request #936 from RickMohr/per-instance-itree-codes

Migrate ITreeRegion table to have one row per region
Make sure south occurs early in installed apps

The placement of south after apps that use south is a common source of bugs that can reach through to many parts of django.
Update documentation
Remove unused code