mark all properties as cacheable
Don't rely on Ember's core prototype extensions

 * func.property('foo') becomes Ember.computed('foo', func)
 * func.observes('foo') becomes Ember.observer(func, 'foo')