Garbage collection
 - be sure to mark all contained scm objects

Adding a new type?
 - be sure to call init_TYPE from scwm.c -- search for init_

Dieing in malloc()?
 - free-d an already freed pointer; consider setting
   the pointer to NULL immediately after freeing it

Be sure not to use, e.g., menu_p() as a C boolean -- use MENU_P() instead
  - the object_p() functions return SCM_BOOL_F or SCM_BOOL_T both of which
    are evaluate as true in a C expression

When type checking, consider using, e.g., FONT_OR_SYMBOL_P to permit
  using a symbol when the value is actually used.  Then when you want the
  font, use DYNAMIC_SAFE_FONT(scmFont) to get at the value;
  also see DEREF_IF_SYMBOL for an abstraction for getting the value of
  a symbol.  See also DYNAMIC_PROCEDURE_P and PROCEDURE_OR_SYMBOL_P
