Using Bazel aspects to run clang-format

Bazel's aspects are next to rules the major building block used to extend the functionality of your build system. Contrary to rules, aspects allow to run particular functionality over an existing dependency graph. Aspect are documented pretty well on the bazel documentation page: Aspects | BazelBazel [https://bazel.build/rules/aspects]…