Add and auto-generate documentation (fixes #5)