flexiserver: don't look at pam service name to find login screen

It changed a long time ago and we neglected to update it here, and
checking the class is good enough anyway.
utils: move login screen jumping code to common

flexiserver has a bunch of complicated logic i want to use in the
worker.  Move that code to the common library and make flexiserver
link against the common library.
flexiserver: don't open a display

The only reason it uses gtk is to show some awful dialogs in the case
of failure.  Drop that code.

Now gdmflexiserver can be run from the command line.
worker: move PAM tty/display setup to open session

In the future we aren't going to know if we need to set the display
and tty until open session time.  (because we shouldn't set them for
wayland sessions).

This commit moves that initialization code until then.
daemon: add new gdm_session_is_running method

GdmSession emits when a session is started or stopped, but doesn't
let a caller query if a session is on-going.

This commit adds API for that.
daemon: rename gdm-slave-proxy to gdm-slave-job

It doesn't actually proxy calls to the slave, so it's misnamed.
daemon: rename slave_bus_proxy to slave_proxy

The _bus_ middle part of the name was only there to prevent ambiguity
with the, then named "gdm-slave-proxy", but now named, gdm-slave-job class.
daemon: move user session code from slave to main daemon

This will allow us to run a session without a slave babysitting it.
slave: add ability to reset launch environment

This is useful if we want to kill a greeter and start a new
one on the same X server.
daemon: support launching sessions on separate VT

If an xsession file sets X-GDM-NeedsVT to true, then GDM will
now automatically allocate a new VT for that session and jump to
it before starting the session.  Once the session completes, the
worker will automatically jump back to the VT it started on.

This will be useful for getting mutter-launch to be able to launch
a gnome-shell wayland sesssion.  Longer term, I think mutter-launch
will go away and its functionality will get moved into logind.