SAML2LogOutHandler can not work with SPFilter

Hi 

Global log out is not working when use SPFilter together with SAML2LogOutHandler, the root cause is, a Servlet Filter like SPFilter can not set user principal to the HTTP Servlet Request object, but SAML2LogOutHandler always expect it.

I made some change to SAML2LogOutHandler to let it first retrieve user principal from request then session, so that it can work with SPFilter and Service Provider Authenticator both.