Adds the ClientCertificate to the Request

For Hosting.Aspnet, Hosting.Wcf and Hosting.Owin. I've also done a
pull-req to https://github.com/prabirshrestha/simple-owin/ to make that
send the Certificate on in the ssl.ClientCertificate env variable.
In tests the ClientCertificate property is null.

IIS fills this with an empty object. Thats why I check for .Length == 0.
Code clean up. And added the certificate to the

OWIN env in the owin demo. So I can refer to that in the documentation.
Bit more Stylecop OCD.
Also adds the ClientCertificate in Hosting.Self
Changes according to @thecodejunkie

WCF Claimset doesn't assume [0] is the X509CertificateClaimset anymore.
And the certifcate variable name is now the same in every host.
Exception handling when read an unmanaged code library
Fix typo
Merge pull request #1045 from jugglingnutcase/patch-1

Fix typo in Browser.cs
Fix issue with login request helper

Any POST to the diagnostics app was being treated as a login request.
Merge pull request #1048 from jugglingnutcase/diagnostics-login-fixes

Fix issue with login request helper. Fixes #1047
Changed MoveStreamOutOfMemoryIfExpectedLengthExceedExpectedLength signature
Brought in changes for #1034
Improved request stream copying
Added XML comment
added new Greedy RegEx Node
updated XML doc
renamed file to fix casing (temp)
renaming the file back
fixing missing ctor param