Zipper fixes & tests

Ports 6f75ca66 and e4bda754, and reinstates the tests which have been disabled
in 541cf769.

I am not yet entirely sure what happens in ZipperTest: Apparently `===` is not
Scalaz' `Equal` but comes from specs2. This led to some weird test failures in
some cases and compilation errors in other cases (with 2.9 and 2.10 failing
differently). I replaced the problematic occurrences with explicit calls to
`Equal` or `==`.