Added before save/destroy callbacks.
Better handling of nil field values.