Implement dirty checking and only PATCHing modified fields
Send all fields when POSTing a new instance
Test and implement correct checking of nested object properties
Break object references in $original

Javascript, I love you, but you're bringing me down.
Whitespace removal
Refactor to hide original data behind accessor/mutator method.