Move Sketch2D's session recorder into the framework: SessionRecorder in
GraphicsInput, SessionRecordingControl (REC badge, save and discard
dialogs) in Widgets, and DebugTools in WidgetsApp. Every
WidgetApplication attaches a trailing Debug menu with Debug UI, Record
session and Stop recording and save unless it opts out. Sessions save
environment, raw input and per-frame profiles; apps add their own
state through a snapshot hook, which Sketch2D uses for its document.