[geoclue] Close client interfaces if clients exit.

This commit extends 79f2e18b573e5938d6554a7272ce2cf6ec636829.

Handle the case when clients do not close cleanly and call
RemoveReference on the client objects. Listen for NameOwnerChanged
signals and close the client interfaces for applications that
unexpectedly disconnect from DBus.

This makes auto shutdown of providers more robust. Since geoclue-master
holds open a reference to all applicable providers if a client
interface exists, those providers cannot shutdown until the client
interfacees are clean up.
[geoclue] Fix compile warning.