Use an instance variable to track new records

The previous approach of tracking new records based on the presence of a GUID was flawed (i.e. does not work with records that do not have GUIDs or when a GUID is set on a non-persisted record).

Instead, take the Rails approach of using an instance variable to track if a record is new, adding a new method (:instantiate) to initialize records that are already known to be persisted.

// @abrandoned