Adds SpeakingObserver, which emits seven event types:
- user_speech_started / user_speech_stopped: speech detected by VAD.
- user_turn_started / user_turn_stopped: boundaries determined by the user-turn strategy.
- bot_speech_started / bot_speech_stopped: bot speech boundaries.
- interruption: an interruption was triggered.