anchor.diff:              g
   
           member this.Merge(level:int, howMany:int, all:bool, cascade:bool) =
  -            checkForMerge level howMany all cascade
  +            if cascade then
  +                cascadeMerge level howMany all
  +            else 
  +                plainMerge level howMany all
   
           member this.BackgroundMergeJobs() = 
               backgroundMergeJobs
  
positive.code:     let doAutoMerge() = 
          // TODO allow caller to specify settings to control or disable this
          if autoMerge then
              match checkForMerge 0 4 false true with
              | Some f -> startBackgroundMergeJob f
              | None -> ()
  
  
negative.code:                 }
              )
  
      let getPossibleMerge level min all =
          let h = header
          let segmentsOfAge = List.filter (fun g -> (Map.find g h.segments).age=level) h.currentState
          // TODO we are trusting segmentsOfAge to be contiguous.  need test cases to
  