SAK-25460 SAK-25727 Add support for manipulating values from LDAP.

Conflicts:
	component/src/webapp/WEB-INF/jldap-beans.xml
	jldap/src/java/edu/amc/sakai/user/SimpleLdapAttributeMapper.java
WL-469: implemented a better strategy for removing middle initial(s).

This implementation is as per Matthew's original suggestion. Here we
extract the first name from the display name by removing the surname. If
the surname is not present - unlikely, but possible - we just resort to the
value of the givenName attribute from Oak LDAP.

WL-652 Don't trust input LDAP data.
Should prevent IOBE with firstname == lastname.
SAK-26150 Add support for display ID in JLDAP.
Oxford support for displayId.
Support the external groups from LDAP.
WL-602 Make sure we're in a transaction.

Conflicts:
	component/pom.xml

WL-2487 Make sure we return LDAP connections to the pool.

We weren't returning LDAP connections to the pool, this probably wasn't
a problem but is worth fixing. Also extracted constants out.
Pass the socketfactory to the poolconnection.
This is so that we don't rely on the system wide value of which socket factory to use.
SAK-25929 Time LDAP queries and log at debug.

Conflicts:
	jldap/src/java/edu/amc/sakai/user/JLDAPDirectoryProvider.java
Simple round robin sockets. Doesn't handle errors at any level.
WL-625 Expand the hostname into all possible IPs.
SAK-26119 A wrapping UDP that only allows calls to pass through if a specific thread local is set to true.
WL-872 Show removed users appearing in site info.
SAK-26126 Implement AuthenticationIdUDP.
SAK-26151 FilterUserDirectoryProvider didn't pass errors up.

It would NPE when it failed to search a provider rather than doing the documented thing of returning null to indicate a problem.
Switch to a federation of LDAP and kerberos.

Conflicts:
	component/pom.xml
	component/src/webapp/WEB-INF/components.xml
WL-653 Fix for my breaking of oakAlternativeEmail.
Working version of verifying the ticket.
Need commandline args of
 -Djava.security.auth.login.config=sakai-jaas.conf -Djavax.security.auth.useSubjectCredsOnly=false
Switch to getting a login context.
This means we don't use the default ones any more.
2.6.x doesn't like singletons.
First working version of providing roles.

Conflicts:
	jldap/pom.xml
WL-892 Add OSS student ID to the user object.
Load the units so they can be displayed in the SES.

Conflicts:
	jldap/src/java/edu/amc/sakai/user/SimpleLdapAttributeMapper.java
	jldap/src/test/edu/amc/sakai/user/SimpleLdapAttributeMapperTest.java