Added merge-with

Inspired by Clojure core