title: Importing required external implicits or merging implicits to get one common import
body: <p>I am creating a library to handle fixed-length using Scala. </p>
  
  <p>For encoding and decoding the <code>strings</code> I use type class based system. I have provided my own <code>Read[A]</code> and <code>Write[A]</code> for handling this actions.</p>
  
  <p>My <code>Write</code> type class is using <code>Show</code> from <code>Cats</code> under the hood. It works, but it requires the user to explicitly import <em>cats'</em> implicits, like:</p>
  
  <pre><code>import com.github.atais.util.Read._
  import cats.implicits._
  import com.github.atais.util.Write._
  </code></pre>
  
  <p>the example could be seen on the Github project:<br>
  <a href="https://github.com/atais/Fixed-Length/blob/702d7d242e5b1f6e1c6b581ad7356f36ca6ed8d9/src/test/scala/com/github/atais/fixedlength/simple/CodecTest.scala" rel="nofollow noreferrer">https://github.com/atais/Fixed-Length/blob/702d7d242e5b1f6e1c6b581ad7356f36ca6ed8d9/src/test/scala/com/github/atais/fixedlength/simple/CodecTest.scala</a> </p>
  
  <p>Is there any walk-around? I would like to hide the <code>cats</code> import or (if possible) merge all three into a single implicit object.</p>