There are two kinds of # directives -- those that have subs and those that don't.
glossary and menus are compound types. There are others #templates, #macros and #style.
Each item under #templates is a type, and the text under the type is what's used to render a page of that type. Of course a template can contain macros and glossary items, as well as linking to menus through macros.
Under each item in a #macros item are names of macros, and under each macro is the JavaScript code that's executed when the macro is invoked. Your macros can override the built-in macros.
Under each item in a #style section are names, and under the names are CSS styles. The names are ignored, they can be used as comments so you can keep track of what they do. However a name can't be blank. The styles are cumulative, so that styles defined in sections of a website can override those defined in outer sections. CSS can contain macros, so you get the functionality of a lightweight LESS-like pre-processor.