basic event creation and registration implemented