Format patterns as functions

Treating format patterns as functions gives us a powerful string
interpolation syntax.  It has the full power of format/2 but the
succinct syntax of string interpolation.

This string interpolation style looks very similar to Python's.  I
don't think it's possible to implement Perl/Bash style interpolation
because variable names are discarded during reading.
Flesh out documentation

The previous documentation was sparse relying mostly on examples.
This documentation explains nearly everything the library can do, why
and how to extend it.
Bump version