Rework callbacks:
Use generic apply: processing to deal with addEventListener, setTimeout.
Include all CustomElement lifecycle operations.
When the DOM return null, record a null.
Symptom: out of sync on playback.
Analysis: document.currentScript was not being recorded in pica platform.js.
The value was returned as null and FakeMaker was marking it as 'object'
rather than value (null).
Fix and new test included