added additional tests, added more parameter validation
updated README and made events options in eventlistener