[FEATURE ember-runtime-proxy-mixin] Add Ember.ProxyMixin.

Moves most functionality of Ember.ObjectProxy into a mixin that use used
for `Ember.ObjectProxy`, but can also be used on its own (for mixin into
custom objects).
Merge pull request #5156 from rjackson/object-proxy-mixin

[FEATURE ember-runtime-proxy-mixin]