Fixing warnings generated by clang 8.0 on Windows
- Deprecation removals previously specific to MSVC/Intel now also used by clang
- String literals were assigned to non const pointers. These are stored in mutable arrays now
- An implicit function pointer to pointer conversion is a Microsoft extension warning is suppressed by an explicit reinterpret_cast
- The MSVC specific deprecation macro for jsoncpp was moved after the clang macro to avoid redefinition warnings. This is consistent with how jsoncpp fixed the issue in 36d8cfd7