sb-sim — point-in-time market simulator + reference agents (Phase 1).
The engine feeds an [Agent] a [sharpebench_protocol::MarketObservation] that only
ever contains data at or before the decision date (look-ahead is structurally
impossible — [Dataset] never hands out a future bar), applies the resulting
orders with transaction costs and seeded execution slippage, and emits an
[sharpebench_core::Run] (per-period returns + decision trace) ready for scoring.