observeChanges

fun observeChanges(observer: (oldState: T, newState: T) -> Unit): Boolean

Adds an observer that only reacts to actual state changes (not same state).