refactored app to use class structure, added keyboard, mouse input