The rendering deserves it's own class