Previous changes to DatabaseObject broke certain classes. This commit fixes that issue and moves those changes to an new experimental interface.