Make more specific tests when checking exceptions

When checking ArgumentNullExceptions it is more specific to check for
string equality on the ParamName attribute instead of checking for
substrings in the message.
In case you follow the old pattern and have an argument called "name"
you could detect the wrong ArgumentNullException since the "name" is
part of the standard message anyway.
Added my name to the contributors list
Added extension method to format dates
Introduced usage of ToSaml2DateTimeString().
- Changed all manual DateTime formatting to fit Saml2 format with calls to ToSaml2DateTimeString.
- Fixes #34 Add DateTime extension method for SAML2 formatting.
Moved xml generation for Saml2Subject to own extension.
- New extension for Saml2Subject, ToXElement() that generates xml.
- Saml2AssertionExtensions uses new extension instead of building xml itself.
Fixed tests for Saml2SubjectExtensions.ToXElement.
- Test for functionality of Saml2SubjectExtensions.ToXElement.
- Reduced subject testing in Saml2AssertionExtensionsTests to only test basic presence of subject.
Added ToXElement extension for Saml2Conditions.
- Changed Saml2AssertionExtensions.ToXElement to use new extension method.
- Added tests.
- Fixes #33.