* implement exclusive fullscreen
* fullscreen ext should be device ext
* add acquire/release
* require VK_KHR_get_surface_capabilities2
* fullscreen_exclusive is now an enum; explicit acquire/release methods added; FullscreenExclusiveError added to handle errors; FullscreenExclusiveLost varients added to acquire and present related errors
* add checks for double acquire/release; require AppControlled for acquire/release functions
* update examples and tests; resolve issue with try_gpu_lock() on SwapchainImage; update changelogs
* Implement support for VK_KHR_16bit_storage and VK_KHR_storage_buffer_storage_class.
This change also allows SPIR-V instructions to require device extensions.
* Remove SPIR-V capabilities with duplicate values (StorageBuffer16BitAccess and UniformAndStorageBuffer16BitAccess).
* move changelog entry to current version