Add clang-format config and check-format.sh script (#724)

* Add clang-format config and check-format.sh script

Travis CI is now configured to run check-format.sh and the job will
fail if any format violations are detected. This will only check the
format of new/modified code; existing code that violates the format
will not cause a CI failure.

* Make format checking the first Travis CI job

* Tweak format based on Jeremy's preferences

* Tweak format based on Kevin's preferences
5 files changed