Undo improvements.

Fixes https://github.com/guardian/scribe/issues/98 and https://github.com/guardian/scribe/issues/298.

I thought it might be easier to review this instead of (or at least in addition to) my changes to `emailer-app` to pick this up, @bradvogel.

I'll submit this PR to upstream after we've tested it for awhile.
Ah rats, this breaks `observeDomChanges`' mechanism for not running recursively, by suppressing events while the (assumed-to-be synchronous) callback is executing. Thinking.