implement join(); some cleanup
remove debug
fix remaining planner tests
fix test
get rid of lEft and rIght entirely
update tests for no more lEft/rIght
update recursive merge() calls; update tests