Make the structure a bit more separate
Modularize the rendering code
Rendering agents is a thing