massive refinement to core classes