Improve clang-tidy usage
Based on !44 (merged)
Ideally we would want the codebase to not emit any clang-tidy warning or error. We should try to do this little by little both by improving code, disabling unuseful checks, and adding // NOLINT
comments when a check is useful but it is not worth adhering to it.