Add initial documentation.
Add module-level documentation.
Update TODO notes.
Reword for readability.