this was the source of the problem, this same self. variable was later used to deduce the utility functions from existing functions...
it only contained functions starting with "do_" so this was pretty nonsensical