Model field change tracking

@nrschultz