Just did some research, and here are my comments:

* As mentioned above, the order/behavior of onDelete/onAdd/onContainerChanged events are by design. (due to fact that token data has always been a child of the image data, both in FGC and FGU; so moving is literally deleting from old map and adding to new map.)

* I verified the onAdd/onMove ordering. It's sort of a chicken and egg problem with ordering and our current design with regards to data value setting and consistency between clients. I built a new ordering of steps to consolidate the initial position information will be included in the onAdd event; so that the first onMove is no longer needed and won't be an ordering problem. I'll push as part of beta test soon; and hopefully, it won't cause any issues.

* For the remaining item (#1 above), the onMove events will be generated for every open window containing the token. We currently don't track which window is triggering the event through the entire workflow; so all token events which are fired will trigger the appropriate event in any control pointing at that image value. If you have multiple windows pointing at same image, you should expect to get all events. There are no plans to change at this time; due to the amount of work and possibility of introducing issues.

Regards,
JPG