This multiple function module observes and applies edits to pages already in the lineup. Refresh sets this up. First in the Three Layer Store the editor insulates lower layers from knowledge of the dom.
The Text Editor calls the Page Editor to save edits.
Refactorings go directly to the Page Editor.
Links bypass Page Editor to call Page Storage Policy.
Pages
Pages exist as both javascript and dom objects.
Pages are either ghosts or stored in some persistent store.
Pages once were (still are) stored in javascript data annotations in the dom.
Editing
Story modifications are detected by clicking or dragging dom objects.
jQuery handlers convert gestures to Actions posted to the Page Editor.
The editor applies Actions to the lineup and then refreshes all copies of the dom, updating calculations as it goes.
What about non-editing events?