This way we only initialize the dialog when we actually want to show it. Because creating dialogs is a relatively CPU intensive tasks, Plasma has wrapped lots of it's dialogs in a loader too.
This also gets rid of quite a few warnings, because we do not create the KNS components without having an engine.
file:///home/user/kde/usr/lib/x86_64-linux-gnu/qml/org/kde/newstuff/qml/Page.qml:156: TypeError: Cannot read property 'useLabel' of null
file:///home/user/kde/usr/lib/x86_64-linux-gnu/qml/org/kde/newstuff/qml/Dialog.qml:130: TypeError: Cannot read property 'uploadEnabled' of null