All the base classes were providing the same functions. Also, it is convenient to be able to store all the ops in a single array - in order to process them in a single transaction.
https://linear.app/comm/issue/ENG-6004/wrap-all-store-operations-from-one-action-in-transaction