- Add broadcast_loop sending position ticks at 10Hz to all clients - Replace echo stub with play/pause/seek/load command dispatch to MPVEngine - Start broadcast_loop as asyncio task in lifespan, cancel on shutdown - Use get_engine callable to avoid circular import at module level