Allow null values in asyncMapSample and buffer (dart-lang/stream_transform#124) Closes dart-lang/stream_transform#121 - Add a boolean to track whether we have a value since we can't use `null` as a sentinel value for a potentially nullable generic type. - Replace `!` with `as S` to allow for nullable `S`.