[D-Bus] Improve unittest for PropertyExporter

Changes the way we use the message loop in GetPropertyClient, and make
use of OnPropertyChanged callback so we can track multiple property
updates. This will be useful later for testing GetAll().

This patch also adds two more unittests: getting multiple properties,
and getting a property twice, with a change of value in between.