clang-format-only changes

Are we sure clang-format uses a deterministic algorithm? These reformats
seem to be related to changes far away in the code.
Adding a .gitignore
Updating README