add  property to Renderer.
make `get_context_generator` private

There is no need to expose this method given `get_context`.
Add tests

Coverage is at 75%. The remaining statements are difficult to test
because they manipulate state.