Use DBM::Deep. Then, provide a simple script to add a service. In fact, this kind of service manager begs for a master script that you launch to add, remove, start, stop, and list the services.
My criteria for good software:
Does it work?
Can someone else come in, make a change, and be reasonably certain no bugs were introduced?