Using interfaces instead of abstract classes

Changed AbsPresenter and AbsView to interfaces IPresenter and IView.
All presenters and views should implement these interfaces to be able
to interact with the gateway.