Converted ensure-transaction to a fn and added its comp.
Refactored names of the world related protocols.
Separated protocol methods into their own modules.
Split editable world.
Moved *state* into transactable module.