anchor.diff:    /// headers that have to be handled specially - such as Accept, Content-Type & Referer)
     /// The body for POST request can be specified either as text or as a list of parameters
     /// that will be encoded, and the method will automatically be set if not specified
  -  static member RequestDetailed(url, ?query, ?headers, ?meth, ?body, ?bodyValues, ?cookies, ?cookieContainer) = 
  -    Http.AsyncRequestDetailed(url, ?headers=headers, ?query=query, ?meth=meth, ?body=body, ?bodyValues=bodyValues, ?cookies=cookies, ?cookieContainer=cookieContainer)
  +  static member RequestDetailed(url, ?cert, ?query, ?headers, ?meth, ?body, ?bodyValues, ?cookies, ?cookieContainer) = 
  +    Http.AsyncRequestDetailed(url, ?cert=cert, ?headers=headers, ?query=query, ?meth=meth, ?body=body, ?bodyValues=bodyValues, ?cookies=cookies, ?cookieContainer=cookieContainer)
       |> Async.RunSynchronously
   
     /// Download an HTTP web resource from the specified URL synchronously
  
positive.code: 
      // do not use WebRequest.CreateHttp otherwise the silverlight proxy won't work
      let req = WebRequest.Create(uri) :?> HttpWebRequest
  
      // set method
      let defaultMethod =
  
negative.code:         do! output.AsyncWrite(postBytes, 0, postBytes.Length)
          output.Flush()
      | _ -> ()
  
      let isText (mimeType:string) =
          mimeType.StartsWith "text/" || 
          mimeType = "application/json" || 
  