Additional real/virtual attribute change tracking independent of ActiveRecords