Authentication Method in Service Validation, etc

This pull request encapsulates the following changes:

1. A mechanism by which the authentication context can 'remember' the authentication method used, if any
2. The ability to provide user attributes as well as the authentication method in the XML payload response per the modified protocol spec
3. Rendering appropriate error messages, if and when the protocol cannot be satisfied per the authentication method
4. Accompanied by unit tests where appropriate.