[LMP] Added NotificationPlayer.
[LMP] Update old source state after new emitting it.
[LMP] Don't emit stateChanged() if it hasn't been changed.
Merge branch 'lmp_notifications'