kivy based game abstraction layer