Storing location objects and returning an object instead of just an ID

Store the complete location eg
```
this._data[result.id] = result;
```