Extend ModelManager to add database transaction and allow extensions