The changed can be several things correct? What is in the change event if two ATTR of the model are changed? So if the machine id/name is changed, can we update an existing token? If the list of units on that machine change how does that update here? 

I wonder if we should push the rendering bits down to the machine token itself and this turns into more of a

var foundToken = this._machineTokens[oldID].update(newData) ?