clang-apply-replacements: Add code formatting functionality

The tool now supports a collection of arguments to turn on and provide settings
for the formatting of code affected by applying replacements:
* --format turns on formatting (default style is LLVM)
* --style controls code style settings
* --style-config allows one to explicitly indicate where a style config file
  lives.

The libclangApplyReplacements interface has a new function to turn Replacements
into Ranges to be used with tooling::reformat().



git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@191667 91177308-0d34-0410-b5e6-96231b3b80d8
Fix build by adding dep on TransformUtils

clang-apply-replacements unittest Makefile wasn't linking in TransformUtils.



git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@191669 91177308-0d34-0410-b5e6-96231b3b80d8