inject the classloader instead of passing it around