Allow using a custom clang-format.

Introduce a `--clang-format PATH` option to `tools/clang_format.py` and
`tools/test.py` to be able to use an clang-format other than `clang-format-3.8`.

Change-Id: Iddfd963e2208cbc2a19dcc57aeea909daa28e1bc
diff --git a/tools/test.py b/tools/test.py
index f7dbd06..474199b 100755
--- a/tools/test.py
+++ b/tools/test.py
@@ -224,6 +224,9 @@
     const=multiprocessing.cpu_count(),
     help='''Runs the tests using N jobs. If the option is set but no value is
     provided, the script will use as many jobs as it thinks useful.''')
+  general_arguments.add_argument('--clang-format',
+                                 default=clang_format.DEFAULT_CLANG_FORMAT,
+                                 help='Path to clang-format.')
   general_arguments.add_argument('--nobench', action='store_true',
                                  help='Do not run benchmarks.')
   general_arguments.add_argument('--nolint', action='store_true',
@@ -337,7 +340,7 @@
 
 def RunClangFormat():
   return clang_format.ClangFormatFiles(clang_format.GetCppSourceFilesToFormat(),
-                                       jobs = args.jobs,
+                                       args.clang_format, jobs = args.jobs,
                                        progress_prefix = 'clang-format: ')