Commenting code, spliting functionalities to classes.
Commenting code, spliting functionalities to classes.