title: Using Multiple Modules which have Same binding to different types
body: <p>I have two different Modules which have different bindings to same interface and multiple sub modules. Example below</p>
  
  <pre><code>public PublisherModule { 
       public void configure() {
           bind(ITransport.class).to(TCPTransport.class)
           install(new ServerModule()) //Has Binding EndPoint.class to ServerEndPoint.class
       }
  }
  
  public SubscriberModule { 
       public void configure() {
           bind(ITransport.class).to(HttpTransport.class)
           install(new ClientModule()) //Has binding EndPoint.class to ClientEndPoint.class
       }
  }
  </code></pre>
  
  <p>Now I came across a use case where the two modules need to be used together.Any solution?</p>
  
  <p>PS: I cannot use any Named Bindings for now. I was looking for solution like(which doesn't work)</p>
  
  <pre><code>public void configure() {
  Injector injPublisher = Guice.createInjector(new PublisherModule());
  Publisher pub = injPublisher.createInjector(Publisher.class)
  
  bind(Publisher.class).toInstance(pub)
  install(new SubscriberModule());
  }
  </code></pre>
  
  <p>is there any work around?</p>