EscapableDialog does not have to be abstract.  Also cleaning up AbstractGUIApplication after genericizing and moving to Java 5