Added icon, changed how input detection works (KeyListener to
DocumentListener), and added a save state label to status bar