Further refactor of location fields

Location fields are kind of all the same, so...

Change-Id: I973c5ee21f0a1d9c73e8a89395c69dd588c125a6
Phabricator: T76388