I'm not convinced that "safely" and a global autoload belong in the same post. Seriously this is going to kill your performance and bite you with unexpected side effects.
Like sam I suggest you find a simpler solution. Just because you can change the symbol table doesn't mean it should be your first option.
Comment on Re: How can I (safely) use packages of the same name but different versions?