implement new merge using reshape2