Allow Move(..., None) and add World.onEvent
Start of ShareEnergy