То же самое подозреваю относится и к другим вещам.
Например транзакционность и сохранение состояния - подозреваю, что это может реализовываться с помощью соответствующих операторов, дальше только вопрос чтобы это кто-нибудь написал.
Ну и это не обязано жить внутри самой библиотеки, скорее даже наоборот. Лучше иметь набор пакетов, которые могут расширять и дополнять имеющийся функционал, как это делается во всех остальных случаях.