anchor.diff:                          sut.it("has test 2") <| fun() -> addToCallList "test 2"
                   )
                   actualCallList() |> should equal ["test 1"; "test 2"]
  +            )
   
           describe "Lazy object initialization" <| fun () ->
  -            it "can be used to create objects to test" <| fun () ->
  +            it "can be used to create objects to test" (fun () ->
                   sut.describe "Ctx" <| fun () ->
                       let initializer = sut.init <| fun () ->
                           "Value from initializer"
  
positive.code:         before <| clearCallList
  
          describe "test execution order" <| fun () ->
              it "tests execute in the order they appear" <| fun() ->
                  runSpecs (fun sut ->
                      sut.describe("context") <| fun() ->
                          sut.it("has test 1") <| fun() -> addToCallList "test 1"
                          sut.it("has test 2") <| fun() -> addToCallList "test 2"
                  )
                  actualCallList() |> should equal ["test 1"; "test 2"]
  
              it "child contexts execute in the order they appear" <| fun() ->
                  runSpecs (fun sut ->
                      sut.describe("context") <| fun() ->
                          sut.it("has test 1") <| fun() -> addToCallList "test 1"
  
negative.code:                         addToCallList (initializer())
                  sut.run() |> ignore
                  actualCallList() |> should equal ["Value from initializer"]
              )
  
              it "only initializes object once" (fun () ->
                  runSpecs (fun sut ->
                      sut.describe "Ctx" <| fun () ->
                          let initializer = sut.init <| fun () ->
                              addToCallList "init"
  
                          sut.it "uses value" <| fun () ->
                              let x = initializer()
                              addToCallList "test 1"
  
                          sut.it "uses value twice" <| fun () ->
                              let x = initializer()
                              let y = initializer()
                              addToCallList "test 2"
                  )
                  let expected = ["init"; "test 1"; "init"; "test 2"]
                  actualCallList() |> should equal expected
              )
  
          describe "General setup/test/teardown handling" <| fun () ->
              it "runs the sequence before, spec, teardown" <| fun () ->
  