
Adding a new dvo catalog format.  Assume the new format name is 'foo'.

1) create the autocode definition files for average, measure, secfilt, image
   these files must be a subset of the internal versions of these same
   tables.  if you intend to add fields which don't exist in the
   internal tables, you must update the internal tables as well.  the
   naming convention is: average-foo.d, etc.

2) add the new definition files to libautocode/Makefile.Targets (both
   .o and .h lists).

3) set the STRUCT and EXTNAME for these definitions files to have a
   unique value. the naming convention for EXTNAME is DVO_AVERAGE_FOO
   and for STRUCT is AverageFoo (add version info with underscores and
   uppercase, eg: AveragePanstarrs_DEV_0, AveragePanstarrs_PS1_2).

4) create a DVOTableFormat entry for the new format
   (libdvo/include/dvo.h).  the naming convetion is DVO_FORMAT_FOO.

5) add an entry for the new format in dvo_catalog_catformat
 (libdvo/src/dvo_catalog.c).  The name should be "FOO".

6) add entry for structure size in dvo_catalog_load_raw
   (libdvo/src/dvo_catalog_raw.c), since this is not available from
   the header.

7) add entries in ReadRawAverage, WriteRawAverage, ReadRawMeasure,
   WriteRawMeasure, ReadRawSecFilt, WriteRawSecFilt.  Make sure to use
   the new STRUCT names. the conversion function gfit_convert_Foo will
   be automatically generated.

8) add entry in WriteRawAverage, making sure to use the new STRUCT
   name. the conversion function gfit_convert_Foo will be
   automatically generated.  

9) create a new conversion file dvo_convert_foo.c and define the
   internal to Foo conversions.

* Note some esoteric format issues:  

  - LONEOS and ELIXIR lack chip coordinates, and must apply an
    on-the-fly conversion, implemented in dvo_catalog_chipcoords. 

  - LONEOS and ELIXIR use the old primary/secondary photcode concept,
    and must have one photcode dataset extracted from the average
    table on read and resupplied on write.  this happens in
    dvo_catalog_save_mef, dvo_catalog_save_raw,
    dvo_catalog_save_split, dvo_catalog_update_split

  - LONEOS and ELIXIR have old versions where the header does not
    specify the type explicitly.  the functions dvo_catalog_load_raw
    and dvo_image_load_raw identify these types based on special
    keywords.

