Support Transactions

Support transcations without requiring the object manager to be destroyed/cleared in case of a rollback.

What is expected here? This requires changing the behavior significantly. Just as an example, Manager.Remove destroys the object instance immediately. But in case of a rollback later, we need the instance to come back. So Manager.Remove should not destroy the instance immediately anymore. This can break backward compatibility badly. So we're open to hear suggestions on the expected behavior/features.

With the new feature request system, we can properly discuss this request more in deep. This is the most voted feature request for Aurelius, and I'd like to understand what is expected exactly here, and if it's actually feasible to be implemented - which I don't think it is right now.