include model/graph?

Do you think can be useful to have a minimum definition what a model (maybe a graph) looks like in memory?

This pull request includes a very initial draft, open to discussion, of course.
Will open an issue to discuss Stream. Basically, Stream is a more powerful version of Iterator, particularly as it can delay actions and lazily perform computations as necessary based on what the user actually wants to do with the Stream.