Extension of Scala-STM, adding optional durability layer, and providing API for confluent and reactive event layers