added AbstractStage, MainView -> MainScreen, moved some
controller functionality(listeners) out from view