Automatic table-of-contents generation for Programs and About pages (a.k.a. I can PHP!)

Brian, please please please code review this!  This is literally the first PHP code I've ever written so any comments are appreciated.

Known issues:
---------------------

- The styling of the output is obviously not final.
- The "children" sub pages are showing up and probably shouldn't.  We have to figure out what to do with these pages.
- The titles on some pages might be too long.