allow double end as regular streams
added _flush instead of async prefinish
2.0.0