Unifying streaming of all these types once and for all