Nice.

I've taken a look to the sources and seems you're using OBJECTs mixed with CLASSes, and also RECORDs with class methods. Quite an odd way doing things.