<CLARIFY THIS AFTER ALPHA RELEASE>


The "permanent state" of an instrumentation is stored in various
output files.  Here are those files.  Information is perhaps not
perfectly divided among them, but I wanted not to create new files for
version 1.4 of GCT, just change the contents of old files.

The instrumented file contains:
- The instrumented code itself, of course.
- "per file" pointers that point into the global Gct_table and
  Gct_group_table.  Each file only indexes off of its per-file pointer,
  thus allowing files to be instrumented and reinstrumented
  separately.
gct_init(), gct_finish(), and finish_function() write this file.

gct-ps-defs.c contains:
- Definitions of all the per-file pointers, initialized with the
  appropriate offsets.
gct_init.sh initializes this file, finish_instrumentation() appends
one file's definition.


gct-ps-defs.h contains information about how many "things" have been
seen since the last invocation of gct-init:
- How many test conditions (GCT_NUM_CONDITIONS).
- How many race groups (GCT_NUM_RACE_GROUPS).
- How many files (GCT_NUM_FILES)
These numbers are used to make sure that names do not overlap or
portions of tables are not reused.
gct_init.sh initializes this file, init_instrumentation() initializes
it, and finish_instrumentation() updates it.

gct-map contains:
- A header uniquely identifying this instrumentation.
- A succession of file headers identifying a file.
- A succession of function headers identifying functions within files.
- The actual entries that describe coverage conditions.
gct_init.sh initializes this file.  It is appended to by
init_mapfile(), mapfile_function_finish(), and dump_mapfile_buffer().


