Add KMessageDialog, an async-centric variant of KMessageBox
KMessageDialog draws heavily from its older sibling KMessageBox, the main focus of the new class is to inherit directly from QDialog which means it can be easily used asynchronously. Most of the features and widgets that are available in KMessageBox dialogs are available in KMessageDialog.