This adds a .clang-tidy file to the tree, which enables a small number
of checks. The only checks that are applied are:
- readability-container-size-empty: Mostly, this makes empty string
checks use .empty() instead of .size().
- modernize-use-override: This adds override where applicable.
This causes clang to build UHD with fewer warnings.