title: Implicits, pimpl pattern etc
body: <p>Let's say that I have these classes:</p>
  
  <pre><code>case class A()
  case class B()
  case class C(a: A, b: B)
  </code></pre>
  
  <p>and these variables:</p>
  
  <pre><code>val a = A()
  val b = B()
  </code></pre>
  
  <p>Is there a way to get an instance of <code>C</code> implicitly and without making <code>a</code> and <code>b</code> implicit vals? I.e. if I have a method expecting a <code>C</code>:</p>
  
  <pre><code>def foo(c: C)
  </code></pre>