Program now streams from stdin instead of reading it all into memory at once
Program can now read file from specified filename, instead of requiring input to come from stdin