Add C/C++ header rewriter

This adds a C/C++ header rewriter utility. See the top comment on a quick description of how it works.
No workspace rule is provided yet, that will come later.

Test Plan: This is a build utility, doesn't really matter.

X-Origin-Diff: phab/D705
GitOrigin-RevId: 4bf274d8301f3a38a1ec7512bf310be9815fb647
diff --git a/third_party/go/shelf.pb.text b/third_party/go/shelf.pb.text
index 19a0f05..225fa44 100644
--- a/third_party/go/shelf.pb.text
+++ b/third_party/go/shelf.pb.text
@@ -1624,6 +1624,13 @@
 >
 entry: <
   import_path: "github.com/mattn/go-shellwords"
+  version: "v1.0.11"
+  bazel_name: "com_github_mattn_go_shellwords"
+  sum: "h1:vCoR9VPpsk/TZFW2JwK5I9S0xdrtUq2bph6/YjEPnaw="
+  semver: "v1.0.11"
+>
+entry: <
+  import_path: "github.com/mattn/go-shellwords"
   version: "v1.0.5"
   bazel_name: "com_github_mattn_go_shellwords"
   sum: "h1:JhhFTIOslh5ZsPrpa3Wdg8bF0WI3b44EMblmU9wIsXc="