Add ability to revert a model back to its original fetched state and implement on workspace to save the over head of requerying when we leave a dirty record.