Add minimal doxygen markup to the public headers.

Doxygen uses comments in the source code to generate documentation.
This commit just adds the descriptive headers and marks current
comments and appropriate for inclusion in the API docs. Many
symbols remain undocumented. See the warnings from the build output.
4 files changed