title: using and understanding the picoContainer
body: <p>I am trying to use the picoContainer in my project. 
  I know very little about it but want to give it a shot. </p>
  
  <p>As I understand, I have to create a picoContainer and registercomponents with it. 
  I did this </p>
  
  <pre><code>public static PicoContainer getPicoContainer(){
       final MutablePicoContainer pico = new DefaultPicoContainer();
       pico.registerComponentImplementation(X.class);
       pico.registerComponentImplementation(A.class);
       pico.registerComponentImplementation(C.class);
       pico.registerComponentImplementation(V.class);
       pico.registerComponentImplementation(T.class);
       pico.registerComponentImplementation(D.class);
  
       return pico;
  }
  </code></pre>
  
  <p>Now my problem is that for any component to get the other component, it needs a handle on pico. 
  To access any component it needs to do this </p>
  
  <pre><code>A juicer = pico.getComponent(A.class);
  </code></pre>
  
  <p>So, in the constructor for each of them, I need to pass in the pico object? I can easily replace this with a factory. What's the point then? I'm sure i'm missing something here.
  Would appreciate any help. </p>