Exploring Clang Tooling Part 1: Extending Clang-Tidy