Implement `Stream.flat_map/2`

Fixes #1642
Merge pull request #1652 from vanstee/stream-flat-map

Implement `Stream.flat_map/2`