anchor.diff:          let expected = 300
           let actual = [2; 2; 2; 1; 3; 4] |> ZonkKata.Roll.CalculatePoints
           test <@ expected = actual @>
  +
  +    [<ThreeOfAKindWithNoMorePointsProperty>]
  +    let ``Three of a kind of die N and no more points should return three of a kind points for N.`` ((n : int), (roll : int list)) =
  +        let expected = n |> ZonkKata.Roll.ThreeOfAKindPoints
  +        let actual = roll |> ZonkKata.Roll.CalculatePoints
  +        test <@ expected = actual @>
  
positive.code:                 n :: (nextDie (rem-1) (removeNth avail i))
          nextDie 6 pool
  
  type ZonkRoll = 
      static member Roll() =
          let g = gen {
  
negative.code:         }
          g |> Arb.fromGen
  
  type ThreeOfAKindWithNoMorePointsPropertyAttribute () =
      inherit PropertyAttribute (
          Arbitrary = [| typeof<ThreeOfAKindWithNoMorePoints> |])
  
  type OneOrFiveRollPropertyAttribute () =
      inherit PropertyAttribute (
          Arbitrary = [| typeof<OneOrFiveRoll> |])
  