Update code docs, and make pipe keep going if read returns empty string (specifying it has no data... yet.)