OOP work - unfinished