There are a variety of undocumented (or lightly documented) functions and classes - we should flesh out the docblock documentation