(SERVER-39) Allow a certificate to be passed into a request via X header

This commit adds the ability for a certificate to be supplied in a web
request as the payload of a custom HTTP header, X-Client-Cert.  The
header will only be parsed for a value if the `allow-header-cert-info`
master setting is set to true.  When the certificate is retrieved, it
will be supplied as the client certificate to the Ruby request handler
stack, as a direct replacement for a certificate object that would be
typically be provided over SSL.
Yeah, I had written this function because I didn't like the official `thrown+?` one for some reason that escapes me right now. I remember getting some strange compilation/parsing error or something smelly from the guts of it. 

Ryan Senior actually suggested that there's an "opportunity for improvement" with this macro and it might be worthwhile to submit patches upstream. Either way, if `thrown+?` works for you then I'd rather use that, but if we actually want this custom one then we might consider a proper utils namespace for it.