Event-driven, streamable data-model for JavaScript