I've previously tried the first option you suggested, which gives this compilation error:
```
error: no base type found for inherent implementation; implement a trait or new type instead
```

As for the second option, that's exactly what I'm trying to address on the prototype in https://gist.github.com/brunoabinader/9139223 - having ```iter()``` working on List<T> is a blocker.