streams: ensure Writable respects state.needDrain before finish