Changed Dialog's GetEventForDialog to be virtual since not every dialog has it's own event.
Added BPSString for when strings are returned from BPS and need to be freed.
Added Dialog subclasses: AlertDialog and ContextMenu.
Added ButtonEvent.
Added Holster.