Support authentication by SAML identity provider
The proposal is to allow the server to define other services than the tryton login/password to authenticate the users.
The client fetches the name and the URL of those services and propose them as alternative to the login.
The client add to this URL the next
argument which is an URL that will be called with the session as argument once the authentication has been validated.
For SAML we define a login URL which prepare and redirect to the identity provider. sao will use itself as relay state to store the session in the localstorage. tryton will launch a internal web server and use its address as relay state to retrieve the session.