Updates to the API, event type is now required for all events. Refactored package structure (impl-package).