Refactored the code slightly to allow for better reading
added type hinting in the functions and classes to make understanding of the expectations of the functions easier in the future, as well as understanding what they will return
reformatted the file to follow PEP8 style guildelines, allow for easier reading
changed string concatenations in the print statements to f-strings
Refactored the code slightly to allow for better reading