locations models refactored