anchor.diff:  type CollectionTypeContext(rootHandler : ITypeHandler) =
       let translateCollection
           (emptyCons : ConstructorInfo)
  -        (icollection : System.Type)
  -        (clrElementType : System.Type)
  +        (icollection : Type)
  +        (clrElementType : Type)
           value =
           let add = icollection.GetMethod("Add", [|clrElementType|])
           match value with
  
positive.code: type EnumerableTypeContext(rootHandler : ITypeHandler) =
      let translateEnumerable
          (cons : ConstructorInfo) // constructor taking IEnumerable<clrElementType>
          (clrElementType : System.Type)
          value =
          let collectionType = typedefof<List<_>>.MakeGenericType([|clrElementType|])
          let collectionAdd = collectionType.GetMethod("Add", [|clrElementType|])
  
negative.code:     static member Default = defaultInstance :> ITypeHandler
      interface ITypeHandler with
          member this.GetKnownTypes = context.GetKnownTypes
          member this.GetMapping(targetType) =
              let mutable cached = None
              if (not <| mappingCache.TryGetValue(targetType, &cached)) then
                  cached <- context.GetMapping(targetType)
                  mappingCache.[targetType] <- cached
              cached