Updated initWithCoder method to only use decoded values if the model was just created.

The theory goes that if a model already exists in memory and it is
being decoded then the in-memory model is more up to date and should
not be overridden by any encoded data.