If you want an idea for improvement, you can toss explicitly defining each items weight individually and have your system create weight values dynamically. If that's done you can simply dump every drop off the wiki and you're good to go, but I'm just assuming your defining the weights be hand.
My original idea was to stay with the COMMON, UNCOMMON, RARE and VERY RARE format the wiki uses, but having weight logic calculated on collected data from dumping. Like again I'll use Corporeal Beast. On the wiki you know the chance to hit the other unique table is 1:516 or whatever. So that tells you right there that that total weight of the bucket containing all the drops outside of the unique table is 516. So given that you now know the bucket weight, you can actually dynamically assign weights to the corresponding flags of COMMON, UNCOMMON etc for that specific table. you'd have to come up with some formula though, I didn't think that far ahead, but like I said that was my original intention if I ever rewrote mine. But cool that someone besides myself is actually using this