Adds a new volume_level: float field to the Preferences dataclass. This creates a dedicated entry in the preferences.json file to store the user's desired volume (from 0.0 to 1.0).
event_bus: EventBus
loop: asyncio.AbstractEventLoop
This provides a globally accessible instance of the event bus and the main asyncio event loop to any component that needs them.