Return true only if an update is written back to the database

The present implementation will return true if there were fields changed on the model, but some observers changed the values before before being written to the database.

This implementation ensures that TRUE is only returned when a change has actually taken place