Make desktop file substitution cmake-compatible
Split CMakeLists.txt by subdirectory
Fix usage of GTK definitions
Add custom FindIconv cmake module
Rework applications CMakeLists.txt, properly set optional flags