How about just having a separate perl script for each company? It seems like the modularized approach isn't really doing all that much except managing a namespace and it adds a lot of complexity for little value that I can see.
I'm glad you brought this up. My main reason for using the module approach was so I could test the various internal functions that support the do_it API function. I find that there's a lot more support available for testing functions if they belong to a loadable module, though, admittedly, this rationale has a tail-wagging-the-dog ring to it.