Implement some of "on change" memory breakpoints/checks

This only works for certain instruction types (others still always break), but they are the most common anyway.  The rest just need to be implemented...

This conflicts (one small line) with the other pull but it's easy to fix, whichever is merged first.

-[Unknown]