in reply to Difficulty Abstracting

A good programming practice is always to keep to user interface (UI) separated from the program itself. Try developing the game with a minimal UI, and use a separated UI-class. When you want to change the UI, all you need to do is rewrite a new UI-class and leave the rest untouched.

Hope this helps.