merge takes optional colnames arg, passing 6 new tests