馃寢This pull request moves the code away from using raw pointers to address one vulkan object from another. The code now uses smart pointers instead. There are still some changes to be made, like converting some pointers to weak or back to raw pointers. However these changes prevent memory leaks so this update is quite beneficial.