Draft: Last change issue
Currently a monitor's "last change" is the start_check time of the last instance of its previous state. It should be instead the start_check time of the first instance of its current state following the last instance of its previous state.
I added a failing unit test. Note that fixing it will make other unit tests fail. I can fix those when you are done.