Fix issue where the user has to type one more key after typing the last letter

This issue is caused because the processPressedKey method doesn't know that
the currentLetter is null until next call, even after the last letter is
typed. Thus, a check for whether currentLetter is null is done after the
calling of the nextLetter method.
Fix bug where JOptionPane is not shown due to format error
Rename finished() method to finish()

This is done for consistency with the start() class.
Control the TimerPanel from the MainWindow class