Add new script, run-single-config.py, which can be called with a
specific command line to reproduce one configuration failure.
build.sh now always calls this script to build a single configuration.
This way, if there is a failure, we can reproduce the specific
configuration that is failing much more easily
Windows/vcpkg:
- Move out vcpkg.json to the root of our project, which is the recommended
best practice and allows us to use vcpkg in "manifest mode", instead
of "overlay ports" mode.
General:
- Automatically initialize git submodules if needed. Don't rely on the
user doing it, and take it out of the build script.
- A bunch of tweaks to .gitignore