include model?

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.
we would need further discussion on this, also because my complete nescience about the Stream in java8