Brief feature description
It is very valuable to be able to pull in Iceoryx2 as a Bazel dependency so that other bazel projects can build Iceoryx2 for weird and specific architectures. As a part of ticket #329 and #355 Bazel Modules support was enabled for the repository. Make improvements that will allow for Bazel to be built more hermetically.
Detailed information
This should specifically rewrite some existing rules to use bazel managed dependencies (like cargo and rustc) instead of using the system dependencies. By doing so, end users can pull in the Iceoryx project through bazel and allow for more control over the toolchain, there-by enabling custom support for more esoteric architectures.
This change will also improve the developer experience, as you do not need to install any Rust dependencies anymore if exclusively building through Bazel.