To Do List
    - WEB 1
    
    - The next versions of WEB will be more complicated, so I'll need to parse every @p section, not just the first one.
    
 
    
     - WEB 2
    
    - Generate <pre> sections from @@p.
    
 - The code needs to be prettified.  This won't happen for a while. (Wrong)
    
 
    
     - WEB 3
    
    - If we're parsing every @p, then I'll need to support escaping @@ to write this file.
    
 - Weave sections out of order.
    
 
    
     - WEB 4
    
    - Table of contents
    
 - Index
    
 - Progressively updated tutorial sources.
    
 - Bolded terms
    
 
    Additional Fixes:
    
    - Extra newlines in code blocks.
    
 - Long code lines can break their border and the screen.
    
 
    
     - WEB 5
    
    - Proof of concept explaining a Javascript game
    
 
    
     - WEB 6
    
    - Concept mockup of a more integrated tutorial.
    
 
    
     - WEB 7
    
    - separate files. - I don't think I'm doing this.
    
 - Define and use custom formatters.
    
 
     - Cleaner method of inserting display back inside code.
    
 - I want to generate something different than HTML and D.
    
 - I'm not happy with how the title of a code section is disconnected from the body.
    
 - When I want to explain the code within the article, I have to repeat the text in both the description and the code.
    
 - In javascript some keywords and some standard library functions aren't colored.
    
 - I want to interlace descriptions and code.
    
 - I named one section Draw Points Basic and another section Draw Points, and the append Draw Points...+ matched for both.  Detect overly vague names.
    
    
 -  I tend to write explanation, code but the code gets a nice header.  explanation,header,code.  I'd (sometimes?) like to switch the order to header,explanation,code.
    
 -  Errors don't need all the newlines in them.
    
 -  Hyperlink back to section
    
 -  All the formatters need to be documented neatly.
    
 - Having truncated names like Output source code origin com...!, I should fill out the names with the full text.
    
 - Truncated identifier names.  ...! and ...+ are being left in section names.
    
 - I want to highlight the existing blocks where I made a change.
    
 - I want to generate something different than HTML and D.
    
 - Sometimes I really want to invert comments so I have a large block of code with some explanatory comments inside that.
    
 - Truncated identifiers can match in multiple places.