Added workflow that builds wheels for kp and release them to PyPI
When the workflow gets triggered by release, it'll automatically build kp wheels for different OSes/architectures. test them and then release them to PyPI (if PYPI_API_TOKEN was provided as secret in the repository )
This workflow uses (cibuildwheel)[https://github.com/joerick/cibuildwheel] to build wheels.
On a high level, the workflow uses these steps:
1: Building Vulkan from source (because it's a dependency)
2: Configuring cibuildwheel to specify the desired OSes and architectures and also, how to build kp
3: building kp for different versions of Python
4: Installing and testing the wheels
5: Publishing wheels to PyPI
Currently, it support wheels for Linux with x86_64, i686 and aarch64; Mac OS x86_64 and Windows x86_64. There are a few problems that prevented me from adding more, but I think these shall be enough for now; also Numpy only builds wheels for OSes and architectures that I just mentioned(besides win32).