title: Interface injection with Silex
body: <p>I'm trying to implement <code>interface injection</code> with <code>Silex\Application</code>.
  I have my bootstrapping in one PHP file, mind, this is <strong>simplified without the interfaces</strong> actually:</p>
  
  <pre><code>$app = new Silex\Application();
  $app-&gt;register(
      new ServiceProvider($app)
  );
  
  $app['testme'] = function() {
      throw new Exception('I am invoked');
  };
  
  $app-&gt;run();
  </code></pre>
  
  <p>And I have the ServiceProvider:</p>
  
  <pre><code>class ServiceProvider implements ServiceProviderInterface
  {
      public function register(Application $app) {
          foreach ($app as $key =&gt; $val) {
              if ($key == 'testme') {
                 throw new Exception('it works!');
              }
          }
      }
  }
  </code></pre>
  
  <p>The first exception should not be thrown but I expected the second one to trigger.</p>
  
  <p>Why does the above not work and where might be the spot in silex to inject configuration into interfaces according to <code>$app[....] instanceof MyAwareInterface</code> ?</p>