[SceneGraph] Refactoring.
Merge.
[Adapter] Added a base class for implementing the adapter pattern.