Gdm client single connection getter
Get the shared connection from the proxies we've around instead of keeping track of it with a pointer that needs weak pointers and that is very prone to be broken.
Same issue affects gnome-3-28 branch, the same concept could be applied there too, or (and I'd prefer this way, not to make it harder to maintain) we can just cherry-picks the last commits involving this memory management refactory. Otherwise this change is enough to get it working.
Fixes #386 (closed)