duplication eats up memory, handle it in two ways: 1. redundant node merging, 2. large rule processing
incremental improvement on high dup but all < LEAF_SIZE case (even = 0, and don't stop at high dup)
now start to handle small set (nrules < 16)