WEFC_Toronto FannieReportPage proposals

This FannieReportPage.php contains some features that I am using and
would like to see in the upstream version.

1. Right-justification of numbers with decimal points in html_line().
   This stops short of right-justifying all numbers because some
   are sometimes seen as text. I would like to do more fine-grained
   cell-level formatting.

2. Support footers of more than one row by treating the footers array
   as possibly having two dimensions.  My current use for this is to
   have headings above the totals that are different from the top-
   of-column headings.

3. Support some text after the last table with report_end_content(),
   which works as report_description_content() does for text before
   the tables.

4. Different headers (column heads) for tables or table segments
   (e.g. superdepartments), even when not in $multi_report_mode .
   This is done by making $report_headers two dimensional and
   indexed by $multi_counter.  The mechanism, select_headers(),
   for choosing headers supports a single-dimension $report_headers
   and uses the last-available header set if $multi_counter is
   incremented out of range.

   I discovered later how to use calculate_footers() to re-assign
   $report_headers for each table of a multi_report_mode report,
   but it is easier (mentally) to implement them in fetch_report_data().

I find myself chafing at the current FannieReportPage when I try to
fine-tune features of a report.  FannieReportPage tries to support
presentation in html, csv and xls at the same time, but features for
friendly html do not always work in the other formats.  Applying them
in html_line() is not always possible and removing them in csv_line()
or the xls-prep can be tedious or difficult.  I have wondered lately
whether it might be better to keep separate $data arrays for html and
csv ($raw_data). Or maybe the "meta" mechanism could be extended to
indicate formatting of the value in the succeeding cell, or the cell
could contain format and value parts a la sprintf().

I have not found it easy to keep the many layers and facets of
abstraction, multiple output fomats and single/multi modes straight
while working through the ripples these changes require.

In the current situation with WEFC_Toronto it is much more important to
have an html report that is attractive and friendly with a lot of
embedded
help than to be able to re-sort the table in the page or export the
data.

In part, this work is in aid of retiring my FannieReportPage2.php while
supporting new elements I've recently added to StoreSummaryReport.php.
The FannieReportPage.php here includes the handling of META_* that were
introduced to accommodate a multi-segment table.