status.write() per email grows the log unboundedly on big pulls.
Now uses status.empty() to create one updatable slot; per-email
progress overwrites it, cleared after each account completes.
Per-account summaries still use status.write() (one line each).
start/stop/restart/status/logs/open for the label tool UI;
benchmark/list-models/score/compare shortcuts for the harness.
Port scan: checks lsof → ss → /dev/tcp fallback, increments from
8503 until a free port is found. PID tracked in .avocet.pid,
assigned port persisted in .avocet.port.