essentially completely abstracted, and so doesn't know anything about
how to talk to the outside world.
-To use it, you need to create a package which represents your entire
+To use it, you need to create a driver package which represents your entire
application. In our example above, this is the C<BeerDB> package.
This needs to first use L<Maypole::Application> which will make your package
inherit from the appropriate platform driver such as C<Apache::MVC> or
-C<CGI::Maypole>, and then call setup. This sets up the model classes and
+C<CGI::Maypole>. Then, the driver calls C<setup>. This sets up the model classes and
configures your application. The default model class for Maypole uses
L<Class::DBI> to map a database to classes, but this can be changed by altering
configuration. (B<Before> calling setup.)
+
+=head1 DOCUMENTATION ROADMAP
+
+The primary documentation is the Maypole manual. This lives in the
+C<Maypole::Manual> pod documents included with the distribution.
+
+
+=head1 DEMOS
+
+A couple of demos are available, usually with source code and configs.
+
+=over4
+
+=item beerdb.riverside-cms.co.uk
+
+Looks to be down at the moment.
+
+=item beerfb.riverside-cms.co.uk
+
+A demo of L<Maypole::FormBuilder>. This site is running on the set of Mason
+templates included in the L<Maypole::FormBuilder> distribution. See the
+synopsis of L<Maypole::Plugin::FormBuilder> for an example driver
+
=head2 CLASS METHODS
=head3 config