Swapchain: Ensure Destroy{Device|Surface}() don't core dump.
Swapchain: Ensure Destroy{Device|Surface}() don't core dump.

There are multiple pieces of code that can try to delete an SwpSwapchain struct:

- DestroyDevice()
- DestroySurface()
- DestroySwapchain()

This tries to address the various paths through the code, so that
Destroy{Device|Surface}() won't also try to destroy an already-destroyed
swapchain.

KhronosGroup/Vulkan-Tools,KhronosGroup/Vulkan-Tools,KhronosGroup/Vulkan-Tools,KhronosGroup/Vulkan-Tools