title: Why is TraversableOnce.toSeq returning a Stream?
body: <p>Here is an example: </p>
  
  <pre><code>scala&gt; val xs = List(1,2,3).toIterator.toSeq
  xs: Seq[Int] = Stream(1, ?)
  </code></pre>
  
  <p>A sequence is a materialized collection (it's a <code>List</code> by default), so I expected that <code>toSeq</code> would return a <code>List</code>, not a <code>Stream</code></p>
  
  <p>The implementation is in TraversableOnce, </p>
  
  <pre><code>  def toSeq: Seq[A] = toStream
  </code></pre>
  
  <p>why is it not overridden in TraversableLike?</p>