Vulkan updates
Includes a lot of updates culminating in the following high level operations:
- Introduces a libgstvulkan library for sharing the necessary vulkan objects (instance, device, display, queue) between elements
- Passing of Vulkan images between elements
- Passing the necessary barrier information for buffers and images between elements
- Implements an image copying element for the first implementation of a graphics pipeline, framebuffers, shaders, renderpasses, etc