@vingtetun Changed my mind - for now I've decided to do the instantiation here. I think we cover most bases initially - and if needed we can always expose the raw prototype to developers for prototype inheritance when they have a use case for it.