[TAV-465] Refactor renderers and add list rendering.

Renderers now operate on outputs not just data. Rendering list outputs is moved
fully into the renderers and out of the helpers.