anchor.diff:  open Xunit
   open TurtleRunner
   open Microsoft.FSharp.Reflection
  +open System.Reflection
  +
  +// These tests rely heavily on reflection 
  +// This is to allow the tests to compile and fail with an incomplete solution
   
   let private getUnionTypeFromString<'a> (s:string, v:obj list Option) =
       let matchedType = FSharpType.GetUnionCases typeof<'a> 
  
positive.code:                  | Some vals -> Some(FSharpValue.MakeUnion(case, vals |> Seq.toArray) :?> 'a)
                   | None -> Some(FSharpValue.MakeUnion(case,[||]) :?> 'a)
      |_ -> None
  
  [<Theory>]
  [<InlineData("Up")>]
  
negative.code:     let direction = getUnionTypeFromString<TurnDirection>("Left", None)
  
      match direction with
      | Some value -> let item = getUnionTypeFromString<Command>("Turn", Some [value; 10.0])
                      Assert.True(item.IsSome)
      | None -> Assert.True(false, "Must define TurnDirection Left first")
  
  