Commenting code, spliting functionalities to classes.