f9c8ec5a2d
initially written by Roland, but hacked for a while by me. Any good parts are the results of Roland's hard work. Any typos or style mistakes are mine. Submitted by: Roland Smith <rsmith@xs4all.nl> PR: docs/63808, docs/75433, docs/80458, docs/80459 MFC after: 2 weeks