fix infinite loop bug of Traverse[EphemeralStream]

old implementaion of `traverseImpl` calls `Traverse#foldRight`
this cause following infinite loop

```
[error] scalaz.EphemeralStreamInstances$$anon$2.traverseImpl(EphemeralStream.scala:107)
[error] scalaz.Traverse$Traversal.run(Traverse.scala:36)
[error] scalaz.Traverse$class.traverseS(Traverse.scala:58)
[error] scalaz.EphemeralStreamInstances$$anon$2.traverseS(EphemeralStream.scala:107)
[error] scalaz.Traverse$class.runTraverseS(Traverse.scala:61)
[error] scalaz.EphemeralStreamInstances$$anon$2.runTraverseS(EphemeralStream.scala:107)
[error] scalaz.Traverse$class.foldLShape(Traverse.scala:100)
[error] scalaz.EphemeralStreamInstances$$anon$2.foldLShape(EphemeralStream.scala:107)
[error] scalaz.Traverse$class.foldMap(Traverse.scala:104)
[error] scalaz.EphemeralStreamInstances$$anon$2.foldMap(EphemeralStream.scala:107)
[error] scalaz.Traverse$class.foldRight(Traverse.scala:107)
[error] scalaz.EphemeralStreamInstances$$anon$2.foldRight(EphemeralStream.scala:107)
[error] scalaz.EphemeralStreamInstances$$anon$2.traverseImpl(EphemeralStream.scala:118)
[error] scalaz.EphemeralStreamInstances$$anon$2.traverseImpl(EphemeralStream.scala:107)
```
add Equal[EphemeralStream[A]]
EphemeralStreamTest
Merge pull request #398 from xuwei-k/fix-EphemeralStream-traverse

fix infinite loop bug of Traverse[EphemeralStream]