Fix public API.
First pass at documentation.