added stack, keyboard shortcuts, menu items. handle exceptions, special handling for syntax errors.