Better classloading DO NOT MERGE

An initial stab, without tests, at a better approach to classloading, such that objects are loaded not from the currnet thread's context classloader, but from the loader of the module which configured the graph (one per each generation of graph).  

This PR needs tests, but I wanted some early comment on approach.