prototyping new reader/writer model