basis.data: rework Dataset.setAccumulateState events mixing, add more tests