Add comments, main, and populate the dict
change the names of some varialbles, and add __str__ method