Annotated the changes on MainController, and set up exception handling
when login has failed. Different types of exception can be thrown back
to the view (login frame) to inform the user of the error.