fix unmatched signed/unsigned comparisons in demo
give more helpful messages if Git wasn't found since Git is now required to compute version
restore /EHsc on MSVC when invoking sub-projects like demo