anchor.diff:          Logger.LogF(LogLevel.Info, fun _ -> sprintf "Starting request handler")
           processRequests() |> Async.Start
   
  -type ServerNode() =
  +type ServerNode(port: int) =
   
       let network = new ConcreteNetwork()
       let objects = new List<obj>()
  
positive.code: 
  type ServerRequestHandler(readQueue: BlockingCollection<byte[]>, writeQueue: BlockingCollection<byte[]>, objects: List<obj>) =
      
  //    let readQueue = new BlockingCollection<byte[]>(50)
  //    let writeQueue = new BlockingCollection<byte[]>(50)
  //    let network = new ConcreteNetwork()
  
      let serializer = 
          let memStreamBConstructors = (fun () -> new MemoryStreamB() :> MemoryStream), (fun (a,b,c,d,e) -> new MemoryStreamB(a,b,c,d,e) :> MemoryStream)
          GenericSerialization.GetDefaultFormatter(CustomizedSerializationSurrogateSelector(memStreamBConstructors))
  
  //    let objects = new List<obj>()
  
      let handleRequest(request: Request) : Response =
          match request with
  
negative.code:         | _ -> raise <| Exception("Unexpected response to RunDelegate request.")
  
          
  let serverNode = new ServerNode(1500)
  
  let cn = new ClientNode("127.0.0.1", 1500)
  let cn2 = new ClientNode("127.0.0.1", 1500)
  
  let r1 = cn.NewRemote(fun _ -> "Test2")
  let r2 = r1.Run(fun str -> str.Length)
  
  let r3 = cn2.NewRemote(fun _ -> "Test33")
  let r4 = r3.Run(fun str -> str.Length)
  
  r1.GetValue()
  r2.GetValue()
  r3.GetValue()
  r4.GetValue()
  
  