Short intro to functions, esp with return type `class`.
Formatting function documentation.

Reordering of blocks, and using parameter names instead of
arg1...argN. Needs review before continuing.