Add World
Add World.{onBecome,onChange,subscribeTo,unsubscribeFrom}
Catch errors in event receivers
Add xatro.action.Move
Memoize emiiterFor and receiverFor
Move action handles leaving current room now
Allow Move(..., None) and add World.onEvent
Start of ShareEnergy
Add State object (keeps track of state from events)
Replace World.objects with State.state
Remove ShareEnergy so I can focus on getting a simple server running
Add World.execute
Add emitters() as IAction requirement
Add Avatar.{setGamePiece,eventReceiver,setEventReceiver}
BotLineProtocol receives events and quits
Line protocol can connect as bot
Tests pass and avatars are given commands
Work can be required and enforced by XatroEngine
Add ShareEnergy
Add ShareEnergy