initial commit: mvp and mvvm