Reproject shapefiles

This adds database triggers to reproject Boundary and Demographic shapefile data from the Django models as they are inserted / updated.

Based on a discussion with @CloudNiner , there is also a check added in celery to prevent people from uploading Shapefiles if there is no valid GTFS data. It would probably be better to handle this in Angular by disabling the upload buttons, but that wasn't simple enough to do in the time remaining on the card.
Is CASCADE a good choice here?