anchor.diff:              not (directoryExists dir)
           runWithRetries del 3 |> ignore
       
  -    let cleanupDir dir =
  -        let cdr _ =
  -            CleanDir dir
  -        runWithRetries cdr 3 |> ignore
  +    let mutable dirId = 1
        
       ensureDirectory nugetDir
       for nuspec in !! "src/**/*.nuspec" do
           printfn "Creating nuget packages for %s" nuspec
           
  -        cleanupDir workingDir
  -
  +        let tempBuildDir = workingDir + dirId.ToString()
  +        ensureDirectory tempBuildDir
  +        //clean it in case this target gets run multiple times. Which if it does is a bug. But hey since TC throws an exception when the dir is actually not empty. Its a nice circuitbreaker
  +        CleanDir tempBuildDir
  +        
  +        let libDir = tempBuildDir @@ @"lib\net45\"
           let project = Path.GetFileNameWithoutExtension nuspec 
           let projectDir = Path.GetDirectoryName nuspec
           let projectFile = (!! (projectDir @@ project + ".*sproj")) |> Seq.head
  
positive.code: 
  let nugetDir = binDir @@ "nuget"
  let workingDir = binDir @@ "build"
  let libDir = workingDir @@ @"lib\net45\"
  let nugetExe = FullName @"src\.nuget\NuGet.exe"
  let docDir = "bin" @@ "doc"
  
  
negative.code:         |> CopyFiles libDir
  
          // Copy all src-files (.cs and .fs files) to workingDir/src
          let nugetSrcDir = tempBuildDir @@ @"src/"
          // CreateDir nugetSrcDir
  
          let isCs = hasExt ".cs"
  