anchor.diff:  type FluentA(x: int) =
       let mutable a = x
       member this.X = a
  -    member this.Add1 () = 
  +    member this.Add1 () =
           a <- a + 1
           this
   
  
positive.code:     let a = FluentA(42)
      let b = FluentB(a)
      let res = b.DoFluentAndReturnSelf(1).DoFluentAndReturnSelf(2).DoFluentAndReturnInner(3).X
      //res |> equal 42
      res |> equal 44 // assuming add 1 for each DoFluent
      a.X |> equal 44 // original should match as it is internally mutated
  
  // Does not yet work - Requires this to be Lrc<T> and not T when implementing TypeMethods
  // [<Fact>]
  // let ``Class fluent/builder should be sharing same reference and not cloning when returning this`` () =
  //     let a = FluentA(1);
  //     let b = a.Add1().Add1();
  //     a.X |> equal 3
  //     b.X |> equal 3
  
  [<Fact>]
  let ``Class interface from another module works`` () =
  
negative.code:     (p.X, p.Y) |> equal (4., 6.)
      p |> equal (SPoint(4, 6))
  
  let addStructxExpl (a: SPoint) (b: SPoint inref) =
      SPoint(a.X + b.X, a.Y + b.Y)
  
  [<Fact>]
  