don't trash new hasMany relationships
Merge pull request #201 from raytiley/hasMany-persistance

don't trash new hasMany relationships
Add failing test for observing isDirty.
Make isDirty observable

We've removed the custom dirty tracking behavior because it wasn't possible to support this API while having isDirty observable. If this is a big issue for someone, please get in touch.
Remove object cloning code as it is no longer needed by the dirty tracking code.
Moved internal attributes and relationships array to object constructor (class vars)
Also added Model.getAttributes() and Model.getRelationships() methods.
Merge pull request #187 from petejkim/master

Moved internal attributes and relationships arrays to object constructor (class vars)
Merge remote-tracking branch 'origin/master' into streamed-updates

# By Erik Bryn (2) and others
# Via Erik Bryn (2) and Peter Jihoon Kim (1)
* origin/master:
  Moved internal attributes and relationships array to object constructor (class vars) Also added Model.getAttributes() and Model.getRelationships() methods.
  Remove object cloning code as it is no longer needed by the dirty tracking code.
  Make isDirty observable
  Add failing test for observing isDirty.
  don't trash new hasMany relationships

Conflicts:
	packages/ember-model/lib/attr.js
	packages/ember-model/lib/model.js