Add Foldable, Traversable instances for ((,) a)

base < 4.7.0.0 (GHC < 7.8) does not include `Foldable` and `Traversable` instances for `((,) a)`. This commits adds those instances if the version of GHC being used is less than 7.8.

This allows compiling lens 4.3 with GHC 7.6.