Updated event printing and added a new constructor to create events from a string