stream: move duplicated code to an internal module
isIterable() is called in one place with only one argument, so the
second argument and associated logic for it can be removed.
Create a utils module for isIterable(), isReadable(), and isStream().
Do not update/delete: Banner broadcast message test data
Do not update/delete: Notification broadcast message test data
isIterable() is called in one place with only one argument, so the
second argument and associated logic for it can be removed.
Create a utils module for isIterable(), isReadable(), and isStream().