turnip: implement VK_KHR_timeline_semaphore
With small refactor to classify semphore types, implements non-shareable timelines using legacy syncobjs inspired by anv/radv implementation.
Passes dEQP-VK.synchronization.timeline_semaphore.*
Tested with Vulkan-samples.
No implementation for kgsl.
Still needs to see vkd3d-proton examples