updated class structure, added test
Please enter the commit message for your changes. Lines starting
reformat