Generalize zoomTransition

Hi @asayers, 

It would be great if you can merge this so that I can use `zoomTransition` over `Traversals` as well as `Lenses`.

Happy holidays!