anchor.diff:          zipFile.CreateEntryFromFile(source,path) |> ignore
   
       let ensureValidTargetName (target:string) =
  -        let target =
  -          target.Replace(" ", "%20").Replace("\\", "/")
  -          |> fun s -> if s.StartsWith("./") then s.Remove(0,2) else s
  +        let target = ensureValidName target
   
           match target with
           | t when t.EndsWith("/")         -> t
  
positive.code:         let path = DirectoryInfo(p).FullName
          exclusions |> List.exists (fun f -> f path)
  
      let addEntry path writerF =
          if entries.Contains(path) then () else
          entries.Add path |> ignore
  
negative.code:             if File.Exists source then
                  if not <| isExcluded source then
                      let fi = FileInfo(source)
                      let fileName = ensureValidName fi.Name
                      let path = Path.Combine(targetFileName,fileName)
                      addEntryFromFile path source
              else
                  failwithf "Could not find source file %s" source
  