Some platforms (e.g. Ubuntu 16.04) ship a version of vim which supports Python 3 but not Python 2.7 (the output of vim --version contains -python and +python3 under the list of supported features). This patch updates clang-format.py to be Python 3.5 compatible. vim integration should still work with Python 2.7.
In Python 3, universal_newlines=True is needed for subprocess.communicate to accept a string. Without it, the script errors during runtime with: "TypeError: memoryview: a bytes-like object is required, not 'str'"