Use std::shared_ptr for all object in scene
Fix bug close application
Merge branch 'debug'