Refactor based on working BabDev\Renderer concept