case class
monoid, example
OrVal, AndVal monoids