Store
One reactive tree, addressed by JSON-Pointer-shaped paths, and the only place
state lives. Everything a screen knows is a path in here: the rows of a table,
which pane has focus, what the terminal can do. A component that copies store
state into useState has created a second answer to one question.
Events share the path syntax and nothing else. They are delivered and forgotten, with no value to read back - which is the whole of the distinction.