Confirmed that we don't retain `tl` as a field.

```
scala> :javap -private scala.collection.immutable.Stream$Cons
Compiled from "Stream.scala"
public final class scala.collection.immutable.Stream$Cons extends scala.collection.immutable.Stream{
    private final java.lang.Object hd;
    private volatile scala.collection.immutable.Stream tlVal;
    private volatile scala.Function0 tlGen;
    public boolean isEmpty();
    public java.lang.Object head();
    public boolean tailDefined();
    public scala.collection.immutable.Stream tail();
    public scala.collection.LinearSeqOptimized tail();
    public java.lang.Object tail();
    public scala.collection.immutable.Stream$Cons(java.lang.Object, scala.Function0);
}
```