stream-restore: Fix NULL preferred device handling
When a stream is created and the application specifies a device for it,
preferred_sink is left
NULL, because we treat the custom device as temporary configuration. module-stream-restore had a regression in handling this case: it incorrectly cleared the device from the database. These patches add a hook for getting synchronous notifications for preferred device changes, so that module-stream-restore can better understand when the device should be cleared from the database and when not.
Fixes #1063 (closed).