Permit the compilation on Windows with Visual Studio C++
This merge-request is based on !1 (merged), and add the possibility to compile dtk-containers with MSVC version 2019. MSVC is not as good a compiler as gcc or clang, and workarounds have to be used, usually to make it parse the C++ code itself.
The specific merge-request about MSVC, in addition to !1 (merged), can be found at lrineau/dtk-containers!1 (closed).
Cc: @maxGimeno @xxiao