The libc-tidy utility will be used to implement static checks to ensure our implementation standards are met. It will contain checks that are too libc specific to be used with clang-tidy as they may interact with the build system or TableGen files.
1) Creates a libc-tidy executable under the bin folder.
2) Adds a check to ensure that function calls resolve to internal implementations within `__llvm_libc` namespace, excluding system and compiler provided functions.
3) Adds a check to ensure that functions declared with the `LLVM_LIBC_ENTRYPOINT` macro are public libc functions. The ground truth for these function are derived from the TableGen files.
4) Adds the ability to use `LIBC-NOLINT` for special cases.
5) Adds regressions tests for libc-tidy checks.