Allow configuration of Shibboleth attributes in a priority list

The following fields are configurable:
 * Display name
 * Email
 * Locale

Not all institutions use the same attribute to convey the above information. For example, some institutions use `eppn` for their email addresses, others use `email`. In order to spin up new tenants more easily, we should allow these values to be retrieved from a configurable priority list (with validation for email, prior to creating a user).
Should we also test with an email attribute that is not a valid attribute and ensure that an empty email is stored?