require jsdoc comments

We should require documentation for all public modules, classes, and functions.

Closes #4