title: Can I define optional packages in setuptools?
body: <p>Currently one of my packages requires a JSON parser/encoder, and is designed to use <code>simplejson</code> if available falling back to the <code>json</code> module (in the standard library) if necessary (as benchmarks show <code>simplejson</code> is faster).</p>
  
  <p>However, recently it's been hit &amp; miss as to whether <code>simplejson</code> will install when using <code>zc.buildout</code> - something with the move to github, I believe. Which got me wondering; is it possible to define optional packages in my <code>setup.py</code> file which, if unavailable, won't stop the installation of my package?</p>