+str - adds ZipWith and makes Zip use that to create tuples/pairs

@patriknw @ktoso @2m @bantonsson, do we want this one? Or is Flexi replacing all the things?
For me the following compiles:
~~~scala
val zip = ZipWith((_: Int) + (_: Int))
~~~