Begin making folly compile cleanly with a few of MSVC's sign mismatch warnings enabled
Summary:
This makes the changes required to allow folly to compile cleanly with the sign/unsigned mismatch warnings 4388 and 4389, as well as with warnings 4804 and 4805, which are about comparisons between scalars and bool.
Most of the changes in this are to `DCHECK_*` calls which are translated to a templated call which does the comparison internally based on the inferred type of the argument, which for a literal `0` is `int`, causing the warnings to get generated when the comparison is done.
Reviewed By: yfeldblum
Differential Revision:
D4253427
fbshipit-source-id:
cd17973a78e948a62c886a2959f9abf40a69f9f5