added Event class + API docs