title: how to observe changes to a static object?
body: <p>I'm trying to implement geocoding using Google maps JSON API.</p>
  
  <p>I created a model for the location, and and ObjectController,
  the model has the async geocoding logic.</p>
  
  <p>I want the controller to observe changes to the model to reflect the most update data.</p>
  
  <p>I'm trying both with binding and observe and both doesn't work:</p>
  
  <pre><code>App.Location = Ember.Object.extend({
      formatted_address: null,
      location: {
          lat: null,
          lng: null
      }
  })
  
  App.Location.reopenClass({
      geocoded: Ember.Object.create(),
      geocode: function(address) {
          $.ajax({
              url: 'http://maps.googleapis.com/maps/api/geocode/json?sensor=false&amp;address=' + address,
              dataType: 'json',
              context: this,
              success: function(response) {
                  App.Location.geocoded.set('response', response);
              }
          });
  
          return this.geocoded;
      }
  });
  
  App.LocationController = Ember.ObjectController.extend({
      contentBinding: 'App.Location.geocoded',
      testProperty: function() {
          console.log('test');    
      }.property('content'),
      testObserve: function() {
          console.log('test');
      }.observes('App.Location.geocoded')
  });
  </code></pre>
  
  <p>EDIT: changing to <code>observes('App.Location.geocoded.response')</code>fix the issue. can it also work with binding? is there a better way to do this ?</p>