RFC: Add unboxed, abstract return types

Agreed - I just ran into this as a newbie and it was verrrry complicated compared with iterators/enumerators in other languages (C#, Java, etc)