add option to override user attributes from SSO payload

- adds external_username, external_email, external_name to track the last attributes from SSO payload
- adds settings to site settings which allow overriding of any of the three attributes (default to false)
- according to setting, attempts to override name, email, and/or username during sso login process