Add PromiseStream collect overloads, fix bug creating array from generic type at runtime