Draws to stderr(), redrawing in place. Updates are throttled so a fast
inner loop does not spend its time formatting text. The ETA is
extrapolated from a short rolling window of recent calls (see
bar_rate()), not the lifetime average, so it tracks the current speed
rather than a blend of setup overhead and past restarts.
