Refactor toggle location

**Asana Task:** https://app.asana.com/0/8548568858580/16206678766703

Refactors user location code across both controllers into a factory called LocationProvider. This factory is used in both controllers.