Write some documentation and refer to source files for examples.

[ci skip]