[PD-338] Feature multiple locations

# Description
Don't let the monsterous number of commits scare you. Everything in this PR was already reviewed in PRs #939, #937, and #913. Should be a matter of a quick once-over to see if we missed anything while reviewing those others.

# Migrations
Once this is master, we should *incrementally* run migrations. Once 0002 is added, we can run the `update_locations.py` script to convert all addresses into locations. Once we've verified doing so is successful, it should be safe to run 0003.