More work, add gen_event example