title: Why can't I register different components implemented by the same type? (Castle Windsor)
body: <p>I have the following:</p>
  
  <pre><code>interface IMediator { }
  
  
  interface IDistanceRetriever { }
  
  class Mediator : IMediator, IDistanceRetriever{ }
  </code></pre>
  
  <p>When I call the following in my WindsorInstaller,</p>
  
  <pre><code>container.Register(Component.For&lt;IMediator&gt;).ImplementedBy&lt;Mediator&gt;().LifeStyle.Singleton);
  container.Register(Component.For&lt;IDistanceRetriever&gt;).ImplementedBy&lt;Mediator&gt;().LifeStyle.Singleton);
  </code></pre>
  
  <p>I get the following exception message: 
  Castle.MicroKernel.ComponentRegistrationException: There is a component already registered for the given key ...Mediator</p>
  
  <p>Why can't I register different components implemented by the same type?</p>