added more tests
added EventTypes and EventButton, refactored removing event handlers and added more methods