Allocated memory is typically not 'const' if it needs to be freed.
This patch removes around 50 wrong const attributes, modifies the
corresponding functions and finally gets rid of some const_casts.
These have especially been strange for __kmp_str_fname_free() that
added a 'const' to call __kmp_str_free() which removed it again.
Two minor cleanups that I performed in this process:
- __kmp_tool_libraries now lives in kmp_settings.cpp as it is used nowhere else.
- __kmp_msg_empty was removed as it was never used and Clang now complained that it was assigned a string literal that is 'const char *'.