removed android/iphone in favor of OO approach