basic level classes + drawing + mainloop in place