To Do Add README documentation that if you read the entire buffer you passed, then you should deal with it and call read again