Implement krom_read_directory using C++17 on Windows
I experimented with the C++17 filesystem api and implemented the krom_read_directory function to see how it would look like. What I like about the result is, that it is almost portable code (up to the detection of hidden files) which is not only shorter than the original one but also more readable (imo) because all wchar_t handling is gone.
I chose the the krom_read_directory function because it is probably the most complicated filesystem operation ArmorPaint does. Other functions like krom_delete_file become really simple and are merely wrappers around functions like std::filesystem::remove.
Notice that this PR is not meant to be merged but for testing and discussion purposes. Currently it is only active on Windows but it is easy to test it on other platforms, too. To build it C++17 has to be enabled via /std:c++17
See also https://github.com/armory3d/armorpaint/issues/1088#issuecomment-907402562 https://github.com/armory3d/armorpaint/pull/906 #27
Link https://github.com/Kode/kmake/pull/5 (enabling c++17).
Trying to stay away from c++ now that v8 is gone. :slightly_smiling_face: