Use blank client targets for all "traditional" programs that need it, not just
the first.
watcher rewrite: Add WatchSet and readDirectory.
rewrite Watcher
twiddle exports
get watch-test to pass
remove dead builder.copyDirectory({depend:true}) code
Checkpoint for actually using WatchSets.

Have not yet touched initFromAppDir.
checkpoint for initFromAppDir rewrite
in theory, this might work
fix minor bugs. bundler-test passes!
watch nonexistent dirs better
fix HTML sort hack. run-tools-tests passes!
Don't put the old pluginWatchSet onto a Package until we know we're using the
unipackage.
Update BUILT_BY so everything gets rebuilt.
fix comment
update comments
comment about updating BUILT_BY when js-analyze changes
Merge branch 'dep-rewrite-v2' into devel
added some checks for the where argument
Cleanups for PR 1263:

- Display proper caller location (requires extending useMyCaller to take a
  number)

- Recover by only returning valid 'where's so we don't crash later.