Fixed a bug removing a backside widget

Confused about JavaScript's splice
Can train robots to use widgets in containers

When a widget is taken out of a container (e.g. a box) it is now
considered newly created and can be referenced in later actions.

Also renamed removed to removed_from_container for clarity and avoiding
confusing with removed (i.e. deleted)
Watched robots pick up preserves widget size

Sizes no longer change as robots run.
Better removal from container by watched robot

Removal now happens when the robot reaches the container.
Improved widget placement when robot watched

Absolute position when on backside while static when held.
Watched robots now find empty holes

Previously the hole's element wasn't attached.
Fixed z-ordering problem with watched robots

Also used absolute URL to default image (so saved widgets work in any
context).
Updated save.html

And saved the swap example.
Watched robots drop anywhere on top-level back

Vertical dimension is now random as well.