made public some helper structs, added closers to readers