The site tools package has classes to support a standard look and feel through templates
that support somewhat advanced functionality like object method binding, custom
escape/formatting functions, and basic looping and conditionals. It also supports SQL
forms with foreign key handling with drop boxes or lists, and multiple field types like
checkboxes, text boxes, and text areas. Add/delete/edit functionality is handled by the
Form class. Tables can be created in the same way, and support auto-sorting by using
hyperlinked headers, and next/prev handling. Both forms and tables can be bound to
templates to adjust the look and feel or layout, without losing any functionality.