Migration to OOP

Incomplete code