changes in AbstractPresenter and reorganization of code