muxr v2.0.0 — repo/campaign redesign

Breaking: sessions are now two levels, <repo>/<campaign>. The first arg is
a repo key ([repos] in config); the old harness-key indirection and the
3-level <harness>/<category>/<topic> naming are gone. Depth is handled by
sharding, not a third segment.

Highlights:
- Repo/campaign model + on-disk campaigns/<campaign>/{campaign.md,log.md};
  category becomes frontmatter; sharded_from lineage.
- Rebuilt chooser: active-only default (a = all), bold per-repo color bands
  with on-disk path/remote, x archive, c recycle, n new, / filter.
- System prompt is a POINTER, not a snapshot: HARNESS + campaign what/how +
  entrypoint + re-read-after-/compact; the growing log body is no longer
  inlined. Fixes a bug that dropped campaign/log for plural-prompt repos.
- Resumable dormant campaigns (--resume from saved state); --fresh opts out.
- muxr recycle (agent-paced flush to log.md across all campaign locales,
  then reopen fresh — the alternative to compact-looping), muxr reorient,
  muxr archive, muxr migrate-layout (collision- and data-loss-safe),
  muxr shard.
- Absorbs the 1.5.0 in-place upgrade work.

129 tests; clippy clean under deny(warnings); jig agent-shape green.