Added new dialog CustomButtonsDialog, which creates a basic dialog with a title, a text body, and any number of custom named buttons. Each button is bound to a correspending button id. Each button id is stored in the class attribute ID, which is a dictionary that maps the button text (that is, from the input) to its correspending button id.

Removed Abort from YesNoToAllDialog