Refactored tests from src/test to test/ to fix package names for easier testing of protected methods
Added more debug logging statements
Corrected invalid event returned
Split up the receive method into a message parser and handler for easier testing