Making map2Conserve occupy constant stack space.
In spirit of [SI-2411](https://issues.scala-lang.org/browse/SI-2411).
I recently discovered a StackOverflowError, caused by this function: https://gist.github.com/folone/7b2f2e2a16314ab28109
The circumstances are pretty extreme, still having a tail-recursive function seems to be a good idea.
The function behaves the same way old function did (supported by tests), which is not really how map2 behaves. I did not change this behavior to not introduce any regression.
I also think, I found a better home for this function.