Made a start on event.go
Added Session type, and various fixups