removed the details about the node and the events
refactored to be OOP
refactored styling