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/repositories.bzl b/third_party/go/repositories.bzl
index e2b258a..0dea440 100644
--- a/third_party/go/repositories.bzl
+++ b/third_party/go/repositories.bzl
@@ -1407,6 +1407,16 @@
         ],
     )
     go_repository(
+        name = "com_github_mattn_go_shellwords",
+        importpath = "github.com/mattn/go-shellwords",
+        version = "v1.0.11",
+        sum = "h1:vCoR9VPpsk/TZFW2JwK5I9S0xdrtUq2bph6/YjEPnaw=",
+        build_extra_args = [
+            "-go_naming_convention=go_default_library",
+            "-go_naming_convention_external=go_default_library",
+        ],
+    )
+    go_repository(
         name = "com_github_matttproud_golang_protobuf_extensions",
         importpath = "github.com/matttproud/golang_protobuf_extensions",
         version = "v1.0.1",
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="