Initial architecture for clang-tidy.

This is the first version of a possible clang-tidy architecture. The
purpose of clang-tidy is to detect errors in adhering to common coding
patterns, e.g. described in the LLVM Coding Standards.

This is still heavily in flux.

Review: http://llvm-reviews.chandlerc.com/D884
llvm-svn: 187345
diff --git a/clang-tools-extra/test/clang-tidy/fix.cpp b/clang-tools-extra/test/clang-tidy/fix.cpp
new file mode 100644
index 0000000..3af299d
--- /dev/null
+++ b/clang-tools-extra/test/clang-tidy/fix.cpp
@@ -0,0 +1,10 @@
+// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp
+// RUN: clang-tidy %t.cpp -fix --
+// RUN: FileCheck -input-file=%t.cpp %s
+
+namespace i {
+}
+// CHECK: } // namespace i
+
+class A { A(int i); };
+// CHECK: class A { explicit A(int i); };