Initial implementation of a three-valued logic type (Trilean).

The main objective is just to see how well this works using a value
class implementation (wrapping an Int). The representation is:

  0 = false   (all bits 0)
 -1 = true    (all bits 1)
  1 = unknown (last bit 1)

This might not be something that is generally-useful enough to include in
Spire. I just wanted to code it up and see how it looked.
Oh wait, for a value class we can't make the constructor private, unfortunately. That's just a limitation of the technology.