[BUGFIX] Make OpenID login work with identifier select

The OpenID protocol has an option which is called
identifier_select which let's the OpenID provider
return the unique OpenID identifier for a user.
A notable example is Google:
Their OpenID for all users is https://www.google.com/accounts/o8/id
while the actual OpenID identity is different, e.g.
https://www.google.com/accounts/o8/id?id=AItOawm2w
(for users without a google+ profile).

Because of this, we cannot verify that the OpenID URL
given by the user during login exists in our database
before starting the OpenID process.
Instead, we first need to run the OpenID process
to get the final OpenID identifier of the user and
only then check if a user with that ID exists
in our database.

This change also also introduces a new field in the
backend login form, "openid_url". The field is needed
to cleanly distinguish OpenID from normal logins,
to make full OpenID URL normalization possible
(i.e. adding http:// automatically if missing).

Resolves: #25322
Releases: 6.2
Change-Id: Id31238760fe4e58e2a823beddaeb454ba28d59be
Reviewed-on: https://review.typo3.org/21373
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
Reviewed-by: Christian Weiske
Tested-by: Christian Weiske
Reviewed-by: Stefan Neufeind
Tested-by: Stefan Neufeind