create element
insert properties in dict
rename the seperate function and add todos
Add comments, main, and populate the dict
change the names of some varialbles, and add __str__ method
use OrderedDict instead of dict