Locations and data are now objects with keys
fixed bugs with new objects; replaced concat with push