rewrite renderers to assume context is this and receive the state
added functionality to draw images