Create generic traversable reader using CanBuildFrom