Add "hide"/"unhide" events for markers

These fire when the marker is removed/resurrected by editing and undo
operations.

Closes #1093