title: Injecting to Controller not working in Emberjs
body: <p>I have a <code>Storage</code> Ember object that I injected to <code>route</code> and <code>controller</code>. I can access <code>Storage</code> in <code>route</code> but not in <code>controller</code>. (Emberjs version: 1.5.1)</p>
  
  <pre><code>App.Storage = Ember.Object.extend
    #...
    #...
  
  Ember.onLoad "Ember.Application", (Application)-&gt;
    Application.initializer
      name: "storage"
      initialize: (container, application)-&gt;
        application.register "storage:main", application.Storage, singleton: true
  
        #Inject to both controller and route
        application.inject "controller", "storage", "storage:main"
        application.inject "route", "storage", "storage:main"
  
  #I can access `Storage` here in Route
  App.MessagesRoute = Ember.Route.extend
    setupController: (controller, model)-&gt;
      console.log @get('storage')
      #OUTPUTS: Class {toString: function, __ember1397551513765: "ember299", __nextSuper: undefined, __ember1397551513765_meta: Object, constructor: function…}
  
  #But I can't access `Storage` here in Controller
  App.MessagesController = Ember.ArrayController.extend
  
    actions:
      createMessage: -&gt;
        console.log @get('storage') 
        #OUTPUTS: `undefined`
  </code></pre>
  
  <p>I also tried testing on Chrome console:</p>
  
  <pre><code>App.__container__.lookup('storage:main')
  //OUTPUTS: Class {toString: function, __ember1397551513765: "ember299", __nextSuper: undefined, __ember1397551513765_meta: Object, constructor: function
  App.__container__.lookup('route:messages').get('storage')
  //OUTPUTS: Class {toString: function, __ember1397551513765: "ember299", __nextSuper: undefined, __ember1397551513765_meta: Object, constructor: function…}
  App.__container__.lookup('controller:messages').get('storage')
  //OUTPUTS: undefined
  </code></pre>
  
  <p>Any help would be appreciated.</p>