Added a parser class
Event based code; added event methods
--amend