Function
The target to which the signals are bound.
The key path of the data that changed.
Marks as dirty every signal whose bound key path (registered via modelSignal or
nestedModelSignal) overlaps the given changed key path, and fires their attached effects.
A bound path overlaps the changed path when either is a prefix of (or equal to) the other:
replacing a parent value invalidates signals bound deeper inside it, and changing a nested value
invalidates signals bound to any of its ancestors. An empty keys array marks every bound path dirty,
as it represents a change at the root.
markDirtyPath