All functions within the context of the require function are implicitly private. There are no 'public functions' to speak of unless they are explicitly returned by the module. For example there are a few functions in here: applyDerivation and collection. Both are technically private, so should both be renamed? If so,  then everything should be renamed to be private since everything is private except for those values that the modules return. For example: even the main graph function should be renamed to graph_.