Removes push argument in RenderLeaf
Fixes issue #200 and reorganize Viewer classes

- Add a Scene class to handle scene data
- Move most of code to render in Renderer
- Add Stats class to store misc stats data
Add osgShadow