feat(sample): log skeleton events in experiment dumps
The experiment logger was originally object-only — every event wrote
"skeleton": null regardless of what the pose pipeline produced. That
made it impossible to measure pose A/Bs from the captured JSON.
ExperimentEvent now carries an optional Skeleton, the JSON writer
serialises the 12 landmarks (or null per-joint) plus frame dims, and
App.kt collects skeletonFlow alongside customObjectFlow into the same
event buffer.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>