simplify use of #create_function, add documentation

This abstracts away more of the underlying details of using the SQLite3
adapter to define custom functions. Now the supplied block doesn’t have
to worry about the passed SQLite3::Database::FunctionProxy to get the
result into the correct place.

Signed-off-by: Tyler Pickett <t.pickett66@gmail.com>