CAS-1415: Update parent pom to be at v38
CAS-1415: Updated to v39
Merge branch 'upstream/master'
 - deleted obsolete CAS 2.0 protocol spec word file. Was migrated to md in cas-server-protocol.
NOJIRA: updated notice files
Merge pull request #389 from Unicon/CAS-1415

CAS-1415: Update parent pom to be at v39
[maven-release-plugin] prepare release v4.0.0-RC4
[maven-release-plugin] prepare for next development iteration
CAS-1418: allow LdapAuthnHandler to extend the authn subsystem

The current ldap authentication handler does not extend the AbstractUsernamePasswordAuthenticationHandler, because the parent API does not provide support for warning messages to be returned upstream. This commit slightly re-arranges the API to allow each handler to submit warning messages, so that ldap authn handler can also participate in the chain.

Also, as was discussed earlier, the pp-configuration is now moved upstream into the AbstractUsernamePasswordAuthenticationHandler, so that other handlers may be able to benefit from creating policies.
NOJIRA: Fixed typo; changed "polcy" to "policy"
CAS-1418: Reverted change on logging aspect
CAS-1418: Javadoc update, and reused the credential instance post transform
CAS-1418: Renamed param name to be more explicit
CAS-1415: Update parent pom to be at v38
CAS-1415: Updated to v39
NOJIRA: updated notice files
Modify CASImpl to make proper comparisons.  Modify CASImplTests to appropriately test.
NOJIRA: Update ldaptive to v1.0.3
NOJIRA: Verify commit messages after build
Only compare principals for mixed principal case.

Fixes failing test caused by pull #415. Add test coverage to verify mixed
principal failure case.