[Haskell-cafe] type-level integers, type-level operators, and most specific overlapping instance