Ok, I got bored at work, took my own advice, and started debugging this thing.
There are massive memory leaks in there. The author of the module didn't understand
how to get a correct reference count. So instead of bother with the headaches caused by
a to low reference count, he instead increased the ref count on everything returned,
so that nothing would ever be freed. I have gone through it, and cleened up the stuff that were
getting a to low ref count, and removed the extra increase on everything returned. Everything seems
to be OK now. Ill submit my updates to the author, in the meantime
you can grab the fixed xs file from: