`funciton_base`? I needed a way of separating the public Function definition API from the private one. Since functions are created through various methods that essentially build up a class, and are part of the base class, it seemed like the best way was to open it up so that you could specify what base class to use for constructing the function.