What's wrong with CGI.pm? It's dynamically loaded, so anything you don't use, you don't pay for. Just ignore the parts of it you don't need. And of all the modules, it's clearly the most mature, well-used, well-documented, and plenty of examples, not to mention being installed everywhere.