Ensure that chapelprintoutput sections are properly formatted.

This change began because newlines were not getting inserted into the output
text appearing in the formatted spec (.pdf).  The immediate solution was to add
a double-backslash to the end of every line inside {chapelprintoutput}
environments.

Then, I noticed that these were being formatted with the wrong font.  A simple
solution setting the font using \tt at the beginning of the environment did not
work because it was still the wrong size.  To get the format to match between
{chapel} (code) and {chapelprintoutput} sections, I decided to turn the
{chapelprintoutput} environment into a listing environment instead.  The
formatting of the new {chapelprintoutput} environment is the same as the {chapel}
environment, except that keywords are not bolded.

Following this change, three was an instance where comments intended to specify
the .good file name were showing up in the formatted specification.  This was
due to the fact that the listing environment used for the new implementation of
{chapelprintoutput} turns off most formatting.  Lines beginning with '%' are
treated as literal text rather than as a LaTeX comment.

To solve this problem, I modified the {chapelprintoutput} environment to accept
(require, actually) and argument.  The name for the .good file is provided in
the argument, so the text inside the environment can remain a literal
representation of the program output.  I moved the implementation of the
environment from chapel_testing.tex to chapel_listing.tex, because it now has
greater affinity for the latter.
   spec/chapel_listing.tex
   spec/chapel_testing.tex

To satisfy LaTeX, an empty argument was appended to every use of the
{chapelprintoutput} environment (except where the .good file name is specified
explicitly).
   spec/Expressions.tex
   spec/Statements.tex
   spec/Memory_Consistency.tex
   spec/Generics.tex
   spec/Modules.tex
   spec/Iterators.tex
   spec/Ranges.tex
   spec/Domains.tex
   spec/Data_Parallelism.tex
   spec/Records.tex
   spec/Input_and_Output.tex
   spec/Functions.tex

The extract_tests script was modified to understand this new syntax and pass the
requested filename to the .good file generator as an inline comment.

In {example} environments that have not yet been converted into {chapelexample}
tests, I changed the output text environment from {chapel} to
{chapelprintoutput}.  This will ensure that the correct formatting is used
(i.e. without bolded keywords), and make it simpler to convert these to real
tests later.
   spec/Standard_Distributions.tex
   spec/Locales.tex
   spec/Modules.tex

I also added some lead-in text so the example code and program output appeared
better integrated with the text.
   spec/Statements.tex
   spec/Memory_Consistency.tex
   spec/Generics.tex
   spec/Modules.tex
   spec/Iterators.tex
   spec/Domains.tex
   spec/Records.tex
   spec/Input_and_Output.tex
   spec/Functions.tex

In extract_tests, the comment about chapelprintoutput being handled specially
with respect to the removal of spacial characters turns out to be false: All of
the extracted code and results have selected LaTeX formatting sequences removed.
   util/devel/test/extract_tests


git-svn-id: http://svn.code.sf.net/p/chapel/code/trunk@22080 3a8e244f-b0f2-452b-bcba-4c88e055c3ca