Push responsibility into state
Start to document state namespace