There are two styles of programming with CGI.pm, an object-oriented
style and a function-oriented style.  In the object-oriented style you
create one or more CGI objects and then use object methods to create the
various elements of the page.  Each CGI object starts out with the list
of named parameters that were passed to your CGI script by the server.
You can modify the objects, save them to a file or database and recreate
them.  Because each object corresponds to the "state" of the CGI script,
and because each object's parameter list is independent of the others,
this allows you to save the state of the script and restore it later.