title: Laravel events not firing when injecting Dispatcher in model constructor
body: <p>I am trying to inject the Laravel event dispatcher in the constructor of my model from an artisan command but I'm unable to fire subscribed events from this dependency.</p>
  
  <p>It looks like Laravel injects a new instance of Illuminate\Events\Dispatcher instead of re-using the Application dispatcher. I have followed a Laracast video from Jeff Way for the implementation.</p>
  
  <p>I have added in app/start/global.php :</p>
  
  <blockquote>
    <p>require app_path() . '/events.php';</p>
  </blockquote>
  
  <p>This references a file called events.php containing :<br /></p>
  
  <blockquote>
    <p>Event::subscribe('MyApp\event\Handlers\MyEventHandler');</p>
  </blockquote>
  
  <p>The events.php file has a subscribe method with the 3 corresponding event methods as below :</p>
  
  <pre><code>public function subscribe($events)
  {
          $events-&gt;listen('event.start', 'MyApp\event\Handlers\MyEventHandler@onStart');
          $events-&gt;listen('event.error', 'MyApp\event\Handlers\MyEventHandler@onError');
          $events-&gt;listen('event.complete', 'MyApp\event\Handlers\MyEventHandler@onComplete');
  }
  </code></pre>
  
  <p>In my Artisan command, I'm creating a model using Laravel IoC with :</p>
  
  <pre><code>$model = \App::make('MyApp\models\MyModel');
  </code></pre>
  
  <p>And my model constructor is :</p>
  
  <pre><code>use Illuminate\Events\Dispatcher;
  
  class DataReplication {
  
      protected $events;
  
      public function __construct(Dispatcher $events)
      {
          $this-&gt;events = $events;
      }
  }
  </code></pre>
  
  <p>At this point, a new instance of the dispatcher is injected and any listeners referenced in my event handler ('MyApp\event\Handlers\MyEventHandler') is not in the listeners array. Thus when using $this->events->fire('event.start'); there's no handler to hook to.</p>
  
  <p>This seems a bit weird as using the Facade Event::fire('event.start'); from the same model would fire the 'onStart' method in my event handler.</p>
  
  <p>Is there anything I'm missing out here ? I'm under the impression that artisan commands sit in another scope beside the Application, and that only Laravel Facades manage to have a binding with the global application scope.</p>
  
  <p>Thanks for your help.</p>