Differentiate += and ^= for item_glyph

This also modifies split_parse to support prepend vs. append in case
whoever was refactoring list-options to use split_parse continues
this activity.
Make feature, item_glyph, and mon_glyph into list options.

They aren't exactly list options, in that they aren't implemented using
the apropriate macro, and feature clearing works on regexps, but
this is meant to be helpful since some features have odd or long
exact names.
Apply feature colour overrides dynamically.

Previously feature colour overrides were added directly to feature
descriptions, so that defaults were lost. This is required to
correctly support feature = and feature -= if options are changed
at runtime.
Fix formatting.
Replace some (*foo).bar with foo->bar.
Improve docs.

Mention that monster glyph overrides can be cleared, and that none of
the three overrides need :replacement with -=.  Also match the existing
convention for showing multiple uses of an option.
Update monster_glyphs nostalgia for listoptionness.