finished up basic streaming. Still need to handle fileIO errors and refactor