
 profile

 profile inserts #debugp lines into a program module
 causing counters to be incremented each time that part
 of the code is reached.  It also inserts code that causes the
 results to be displayed at the end of the program run.

 At present, this provides a procedural profile and
 limited code section profiling.  There should be an
 option to allow the level of profiling.

 At present, this only works on complete programs, not
 on included files.  That is, profiling will only be done
 on the present file, which should contain a begin-program
 and end-program (or begin-report end-report) paragraph.
 Ideally, the program would either: 1) insert into the
 included files as well, or 2) resolve all includes.
 Either way, this can be fairly dangerous and complex.
 I think our best solution here is to create include files
 of our own names that replace the user's include files to
 the specified depth.

 Note that this profiler can also serve as a source code coverage analyzer.
 In other words, you can use this to determine which code sections
 are used by a test program.  By merging the results of profiling
 several test programs, you can determine which code sections are
 covered.  We may wish to provide some output option that
 allows the user to specify a file name or type of output.

