anchor.diff:  /// Posts a deployment package to the given URL.
   let postDeploymentPackage url packageFileName args = post url packageFileName args defaultTimeout |> wrapFailure
   
  +
   /// Posts a deployment package to the given URL, executes the script inside it with given arguments and handles the response.
   let deployPackage (f : Deployment -> Deployment) =
  -    let d = f { defaultDeployment with AuthToken = authToken }
  -    authToken <- d.AuthToken 
  +    let d = f { defaultDeployment with 
  +                    AuthToken = 
  +                        match authToken with
  +                        | Some x -> Some ( AuthToken x)
  +                        | None -> None }
  +    authToken <- 
  +        match d.AuthToken with
  +        | Some a -> Some (match a with | AuthToken b -> b)
  +        | None -> None
       let result = post d.Url d.PackageFileName (d.Arguments |> Array.ofList) d.Timeout |> wrapFailure
       match result with
       | Success _ -> tracefn "Deployment of %s successful" d.PackageFileName
  
positive.code:     let response = REST.ExecutePost (server + "/login") "x" "x" postData
      authToken <- response.Trim([| '"' |])
                   |> Guid.Parse
                   |> AuthToken
                   |> Some
      authToken
  
  
negative.code:     req.Headers.Add("fake-deploy-use-http-response-messages", "true")
      match authToken with
      | None -> ()
      | Some t -> req.Headers.Add("AuthToken", string t)
      req
  
  let private downloadString (request : HttpWebRequest) = 
  