Document ImageBuf in the programming guide

Some extremely minor changes to imagebuf.h as well -- change some parameter
names, rewrite comments, reorder a couple declarations.  No functional or
compatibility changes at all... just making things clearer for the reader,
stuff I noticed could be improved while writing the docs.
Rebuild PDF docs