I would not use an AUTOLOAD for this. I would follow the strategy of typeglobbing closures that I give at
Re: More then one AUTOLOAD in a class hierarchy.. For one discussion of how AUTOLOAD and OO don't always play ball together see
Why breaking can() is acceptable. The hope that I had of making them play that I discuss there didn't work out, see
Detecting function vs method in an AUTOLOAD? for why not. (Without solving that problem I'm
not going to release a module on CPAN that creates a UNIVERSAL::AUTOLOAD! But hey, I just realized that I could install the AUTOLOAD elsewhere...hmmm...)
UPDATE: That realization is now Class::AutoloadCAN.