Add `didBuild` and `willBuild` to `Watcher`.

This allows consumers to do convienient things (like locking) before and after building.