The type of tracking you are talking about can be added to any class. It does not happen to be "built-in" to the framework (yet.) You can always write your BOs in such a way that you double the number of fields and store the original value in one of them and then let the other be modified.
Interestingly, Rocky is proposing a new way to store Property information for a BO. See this thread for the details: http://forums.lhotka.net/forums/4/19367/ShowThread.aspx#19367
One proposal would allow this sort of tracking to be built in to the framework. Some people like the idea and others object to it because it increases the size of the BO on the wire. My hope is that Rocky is able to add the feature as an optional one. This way those developers that need/want it can use it without having to write their own. And those that don't want it do not have to do anything different.
Copyright (c) Marimer LLC