added ContentManager, compiler pass and LoaderInterface