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.
Iterable is certainly better. This style of bulk operations did not work out so well in Jena.

1. Deciding the batch size is made the responsibility of the client but it can be an important factor for the implementation provider.
2. Collecting together the triples to add is client-side space (inverting the flow of control and creating a pullable-iterable is doable but onerous).
3. Batching at scale 

For a general interface, it might be better to not provide such operations in the core interface and rely on library support code. In style, start small and add facilities cautiously as they will be legacy.