Documentation

Adds docstrings and a first draft of a user manual.
Can we move this back to `\(fn HEADER VALUE FACE [HEADER VALUE FACE] [HEADER VALUE FACE] ...)`?

It wasn't working before because I forgot to add a blank line between the end of the doc and this line. If you use this snippet with a blank line above it you're declaring the calling convention.