anchor.diff:          | Unidentified _ -> typeof<obj>
   
       let rec moldToInstance mold molder =
  -        let pathOpt = Mold.getPathOpt mold
  +        let pathOpt = Mold.getMemberPathOpt mold
           match Map.tryFind pathOpt molder.InstantiationRules with
           | Some rule ->
               match rule with
  
positive.code:                 primitiveToInstance primitive molder
              | Tuple (_, name, elementMolds) ->
                  let ty = Type.GetType name
                  let elements = List.map (fun ty' -> moldToInstance ty' molder) elementMolds |> List.toArray
                  FSharpValue.MakeTuple (elements, ty)
              | Record (_, name, fieldMolds) ->
                  let ty = Type.GetType name
                  let fields = List.map (snd >> fun ty' -> moldToInstance ty' molder) fieldMolds |> List.toArray
                  FSharpValue.MakeRecord (ty, fields)
              | Union (_, name, caseMolds) ->
                  let ty = Type.GetType name
                  let caseInfos = FSharpType.GetUnionCases ty
                  let caseInfo = caseInfos.[0]
                  let (_, caseFields) = caseMolds.[0]
                  let caseFieldInstances = List.map (fun ty' -> moldToInstance ty' molder) caseFields |> List.toArray
                  FSharpValue.MakeUnion (caseInfo, caseFieldInstances)
              | Option (_, _) ->
                  None :> obj
  
negative.code:         | Single
          | Double
          | Decimal
          | Enum of string * string array
          | DateTime
          | IPAddress
          | Guid
  
      /// Describes an F# type in a normalized fashion.
      type Mold =
          | Primitive of MemberPath option * Primitive
          | Tuple of MemberPath option * string * Mold array
          | Record of MemberPath option * string * (string * Mold) array
          | Union of MemberPath option * string * (string * Mold array) array
          | Option of MemberPath option * Mold
          | List of MemberPath option * Mold
          | Set of MemberPath option * Mold
          | Map of MemberPath option * Mold * Mold
          | Array of MemberPath option * Mold
          | Unidentified of MemberPath option
  
          static member getMemberPathOpt mold =
              match mold with
              | Primitive (pathOpt, _)
              | Tuple (pathOpt, _, _)
  