Waldo still lacks a library mechanism.  To compensate for this a bit,
allow user structs to hold function objects.  Then, can pass in user
structs that serve as libraries.  (See example in test, which creates
a math user struct to pass around.)
Updated the Waldo test functions to use Waldo library for no_partner_create.
Trying to reduce the amount of configuration that the user must do.
Instead of relying on a file that can import in emitted code named
_waldo_libs.py that links to relevant internal classes that emitter
needs (eg., wVariables.*), Waldo.py module passes in a dictionary when
creating classes.  This dynamically specifies _Endpoint class that
each compiled endpoint must inherit from.
Added a shim layer that can be used almost as libraries for missing
functions in Waldo.  Pass endpoints (not connected to any partners)
around.  Can pass in Python functions into these shim endpoints for
commonly-needed features (eg., mod, min, max) and then make endpoint
function calls on the endpoints.