Remove unused 'starve writer' code
Remove unused writeOrStarve function
Return nil on no data; Better handling of slow reader
Better testing and coverage
Complete coverage