Port to dart m4 release

new StreamController<T>.broadcast(); is gone in m4. see https://groups.google.com/a/dartlang.org/forum/#!searchin/misc/StreamController/misc/KJrKH5-bNkU/CjpIpEP_EpgJ