gdm: Integrate username asking into the ShellUserVerifier flow
Currently, prompting for the username on the login screen is done
"out-of-band". This leads to subtle bugs where we're trying to
integrate two different state machines, or interpret results from
one state machine as part of another.
It also complicates the logic, as the ability to know whether we
need or want a username is currently in the UI layer rather than
the logic layer.
gdm: Move reset-on-smartcard / reset-on-ovirt code to ShellUserVerifier
We still need to expose smartcardDetected to determine whether to
prompt for a username. This part is another hairy mess of signals
and layer violations that will need untangling, but we'll get there...
gdm: Remove the (partially) unused cancelled signal
When we emit the 'cancelled' signal if we were previously verifying,
we'll always emit a 'failed' signal. LoginDialog doesn't care about
cancelled, only UnlockDialog cares about both, but it does the same
thing for both, so there's no reason to have the extra signal.
Technically, this isn't needed, since to start the process we'll need
to reset(); anyway after all the signals have connected, but this helps
the code be clean.