Add back support for user switch with GDM

With this change, both MDM, GDM and LightDM (or compatible) display managers are supported. If no MDM or GDM is running, then try the standard org.freedesktop.DisplayManager D-Bus interface.

The process_is_running function is come from the cinnamon-session project.