re-organize imports/files
reader: refactor messages to be event based
reader: move connection responsibilities out of reader