Updates in Context and ClientContext

- Viewport, scissor test and stencil test-related functions were added.
- Renamed some of the base classes of ClientContext.
- Minor updates in context::SettingStack.