lots of changes to how locations are pushed to the server