dependency manager return std::shared_ptr and are linked with parents

Dependecies injector has been rewrited : 
It now return std::shared_ptr and not reference any more.
Depencies injectors can be linked so you can access dependencies in the parent via childs : 

If the dependence is not in the scene it'll be searched inside engine.

Closed #73