added Snake OOP