Transform immediately apparent traverse laws into traverse1 laws.
Test traverse1 laws on Nel, Tree theoretically in future.
Merge branch 'scalaz-seven' of git://github.com/scalaz/scalaz into topic/traverse1-laws
Test traverse while testing traverse1.
Merge remote-tracking branch 'origin/scalaz-seven' into topic/foldable-laws
Foldable laws, just consistency really.
Laws about bias, which is not free, in fold1s.
Include functor & foldable laws for when checking traverse.
Test Foldable[Set].
Test traverse1 laws on OneAnd[*..].
Maybe missed law enforcement.
Make the private Functor[Pair] a lazy val.
classify DataTypeOps traits
Reuse instances if possible.

The Tip constructor is often pattern matched and can just be used as the
return value instead of using a constructor. Also favor the use of
`empty` over `Tip()`.

Signed-off-by: Gary Pamparà <gpampara@gmail.com>
fix EphemeralStream#reverse
optimize EphemeralStream.apply
EphemeralStream#reverse test
Merge pull request #471 from xuwei-k/EphemeralStream-reverse

fix #469 EphemeralStream#reverse
Cleanup usage in the case of ⊥

Additionally hide some constants needed for internal housekeeping.

Signed-off-by: Gary Pamparà <gpampara@gmail.com>
optimize ListOrder. avoid stack overflow